Итерация по списку в C++

C++ Программирование и разработка

Наиболее распространенной структурой данных является список. Список — это набор записей, связанных вместе, чтобы их можно было легко повторять и поддерживать.Итератор — это атрибут (похожий на указатель), который указывает на компонент списка. Итераторы могут использоваться для обхода данных списка. Они будут рассматриваться как указатель, указывающий на определенную точку, и затем мы сможем использовать их для получения данных в этой конкретной области.

Итераторы важны для интеграции алгоритмов в списки и изменения данных, хранящихся в списках. Указатель был наиболее распространенным типом итератора. Указатель может относиться к атрибутам в массиве, а затем использовать оператор приращения (++) для перемещения по ним. Однако не все итераторы обладают такой же адаптивностью, как указатели.

Список C++ будет повторяться в обоих режимах (то есть вперед и назад). В этой статье мы создадим список C++ и пройдемся по его компонентам. И в этой статье будут рассмотрены все методы C++, которые будут использоваться для итерации по списку.

Используйте итератор для перебора списка

В этой процедуре создается и инициализируется итератор itr с использованием метода begin(), который указывает первый компонент. Он будет повторяться до тех пор, пока не приблизится к концу списка, при этом «itr» указывает следующий компонент в списке. В этом методе будут использоваться две функции:

  • Begin() предоставляет итератор для начального компонента списка.
  • End() предоставляет итератор качественному компоненту, который следует за последним компонентом списка.

#include<bits/stdc++.h>

using namespace std;
void display(set a)
{
set::iterator itr;
for (itr = a.begin();
itr != a.end(); itr++)
{
cout<< *itr<< » «;
}
}

int main()
{
set a;
a.insert(350);
a.insert(550);
a.insert(750);
a.insert(450);
a.insert(650);
display(a);
return 0;
}

Сначала мы применяем функцию void display() для отображения компонентов набора. Для этих элементов указывается переменная ’a’. Для представления элементов мы использовали цикл for. Внутри цикла for мы применяем функции begin() и end(). Метод begin() возвращает итератор, значение которого указывает на первый компонент. Он отличается от метода front() итератора, в котором функция front() предоставляет указатель, тогда как begin() предоставляет итератор напрямую. Функция end() возвращает итератор, ведущий к последнему компоненту списка. Мы увеличиваем значение итератора.

Мы используем оператор cout для указателя итератора. Сначала мы вставляем числа в случайном порядке. Для вставки этих чисел используется метод insert(). Если мы хотим отобразить все эти числа в списке, то используется метод display(). Чтобы завершить код, мы вводим команду «return 0».

Мы используем оператор cout для указателя итератора

Используйте цикл for на основе диапазона для перебора списка

Цикл for на основе диапазона используется для перебора большинства компонентов в списке в прямом порядке в этой методологии.

#include<bits/stdc++.h>

using namespace std;
void display(set c)
{
for (auto itr : c)
{
cout<<itr<< » «;
}
}
int main()
{

set c;
c.insert(7);
c.insert(4);
c.insert(1);
c.insert(8);
c.insert(3);
display(c);
return 0;
}

Прежде всего, мы вводим библиотеку <bits/stdc++.h>. В следующей строке мы будем использовать стандартное пространство имен. Мы использовали метод void display() для отображения объектов списка. Мы устанавливаем переменную ’c’ для хранения сущностей. Теперь для отображения этих сущностей применяется цикл списка for.

Первый параметр представляет собой объявление диапазона. Определение или указатель на указанную переменную, тип которой совпадает с типом элемента в порядке, указанном выражением диапазона. Для индукции автономного типа часто используется автоматический квалификатор. Второй параметр функции auto показывает диапазон выражения. Это указывает на соответствующий порядок. Мы добавляем оператор цикла, используя «cout».

Здесь мы инициализируем объект указанного списка в теле функции main(). Мы случайным образом добавляем некоторые числа, используя функцию c.insert() для всех чисел. Функция display() используется для отображения этих случайных чисел. Определенный набор передается в качестве параметра этой функции. Мы используем команду return 0 для завершения кода.

Используйте обратный итератор для перебора списка в обратном направлении

В этом методе обратный итератор «itr» создается и инициализируется с помощью метода rbegin() для указания последнего компонента в списке, но после каждой итерации «itr» относится к следующему компоненту в списке обратным образом, и повторяется, пока не достигнет начала списка.

#include<bits/stdc++.h>

using namespace std;

void display(set x)
{
set::reverse_iteratoritr;
for (itr = x.rbegin();
itr != x.rend(); itr++)
{
cout<< *itr<< » «;
}
}
int main()
{

set x;
\x.insert(600);
x.insert(400);
x.insert(800);
x.insert(700);
x.insert(200);
display(x);
return 0;
}

В начале программы мы интегрируем заголовочный файл <bits/stdc++.h>. Мы также используем стандартное пространство имен. Мы использовали метод void display() для отображения содержимого набора. Для хранения этих компонентов мы указали переменную «x». Мы использовали цикл for для обозначения элементов. Процедуры rbegin() и rend() применяются внутри цикла for. rbegin() — это встроенный метод, предоставляющий обратный итератор, указывающий на последний компонент списка.

rend() также является встроенным методом, который генерирует обратный итератор, ведущий к гипотетическому компоненту, предшествующему первому компоненту в списке. Генерируется итератор, и он будет запускаться и продолжаться до тех пор, пока не достигнет конца списка, увеличиваясь в каждом цикле.

После этого мы использовали команду cout для получения указателя итератора. Затем вызывается функция main(). В этом случае числа вводятся в случайном порядке. Функция insert() используется для включения целых чисел в список. Следовательно, мы применим метод display() для отображения всех чисел в списке. В конце мы вводим команду «return 0», чтобы завершить программу.

После этого мы использовали команду cout для получения указателя

Заключение

В этой статье мы обсудили несколько методов перебора списка в C++. Мы будем перебирать список с помощью итератора, цикла for на основе диапазона и обратного итератора. Все эти методики описаны в некоторых программах.

Читайте также:  PHP-функция finfo_buffer()
Оцените статью
bestprogrammer.ru
Добавить комментарий