Iterar a través de una lista en C ++

Iterar a través de una lista en C ++
La estructura de datos más común es una lista. Una lista es una colección de registros vinculados para que puedan ser simplemente iterados y mantenidos. Un iterador es un atributo (similar a un puntero) que apunta a un componente de la lista. Los iteradores se pueden usar para atravesar los datos de la lista. Serán vistos como un puntero que indica un cierto punto, y luego podríamos usarlos para recuperar datos en esa región específica.

Los iteradores son importantes para integrar los algoritmos en las listas y modificar los datos almacenados en las listas. Un puntero ha sido el tipo más común de iterador. Un puntero puede relacionarse con los atributos en una matriz y luego usar el operador de incremento (++) para atravesarlos sobre ellos. Sin embargo, no todos los iteradores tienen la misma adaptabilidad que los punteros.

La lista de C ++ se iteraría en ambos modos (es decir, hacia adelante y hacia atrás). Construiremos una lista de C ++ e iteraremos a través de sus componentes en este artículo. Y este artículo repasará todas las técnicas en C ++ que se utilizarán para iterar a través de una lista.

Use un iterador para iterar a través de una lista

En este procedimiento, se construye e inicializa un iterador 'ITR' utilizando el método Begin () begin (), que indicaría el primer componente. Iterará hasta que se acerque al final de la lista, con 'ITR' que indica el siguiente componente en la lista. En este método, se utilizarían dos funciones:

  • Begin () proporciona un iterador al componente inicial de la lista.
  • End () proporciona un iterador al componente cualitativo que viene después del último componente de la lista.
#incluir
usando el espacio de nombres STD;
pantalla vacía (establecer a)

set :: iterator ITR;
para (itr = a.comenzar();
ITR != A.fin(); ITR ++)

cout<< *itr<< " ";


int main ()

establecer a;
a.insertar (350);
a.insertar (550);
a.insertar (750);
a.insertar (450);
a.insertar (650);
pantalla (a);
regresar 0;

Inicialmente, aplicamos la función Void Display () para mostrar los componentes del conjunto. Se está especificando la variable 'a' para estos elementos. Para representar los elementos, hemos sido utilizados para bucle. Dentro de las funciones de bucle para bucle start () y end (). El método Begin () devuelve un iterador que tiene el valor que indica el primer componente. Se diferencia del método delantero delantero () en el que la función delantera () proporciona un puntero, mientras que Begin () proporciona el iterador directamente. La función End () revierte un iterador que conduce al último componente de la lista. Hacemos incrementos en el valor del iterador.

Empleamos la declaración 'Cout' para el puntero del iterador. Primero, insertamos los números en orden aleatorio. El método insert () se está utilizando para insertar estos números. Si queremos mostrar todos estos números en la lista, por lo que se utiliza el método Display (). Para finalizar el código, ingresamos el comando 'return 0'.

Use un rango basado en bucle para iterar a través de una lista

Se está utilizando un rango basado en bucle para iterar en la mayoría de los componentes de una lista de manera anticipada en esta metodología.

#incluir
usando el espacio de nombres STD;
pantalla vacía (set c)

Para (Auto ITR: C)

cout<

int main ()

establecer C;
C.insertar (7);
C.insertar (4);
C.insertar (1);
C.insertar (8);
C.insertar (3);
pantalla (c);
regresar 0;

En primer lugar, presentamos la biblioteca . En la siguiente línea, utilizaremos el espacio de nombres estándar. Hemos estado utilizando el método Void Display () para mostrar las entidades de la lista. Establecemos la variable 'C' para almacenar las entidades. Ahora para mostrar estas entidades, se aplica el bucle de la lista 'para'.

El primer parámetro representa la declaración de rango. Una definición o un puntero a una variable especificada cuyo tipo es el mismo que el del elemento en el orden especificado por la expresión de rango. Para la inducción de tipo autónomo, el calificador automático se usa con frecuencia. El segundo parámetro de la función 'auto' muestra el rango de la expresión. Indica un pedido apropiado. Agregamos la declaración de bucle usando 'Cout'.

Aquí inicializamos el objeto de la lista especificada dentro del cuerpo de la función Main (). Agregamos aleatoriamente algunos números empleando la C.Función Insert () para todos los números. La función display () se está utilizando para mostrar estos números aleatorios. El conjunto definido se pasa como un parámetro para esta función. Usamos el comando 'return 0' para la terminación del código.

Use el iterador inverso para iterar a través de una lista hacia atrás

En esta técnica, un iterador inverso 'ITR' se construye e inicializa con el método rbegin () para indicar el último componente en una lista, pero después de cada iteración, 'ITR' se relaciona con el siguiente componente en una lista de manera inversa, e itera hasta que alcance el comienzo de la lista.

#incluir
usando el espacio de nombres STD;
pantalla vacía (conjunto x)

set :: reverse_iteratoritr;
para (itr = x.rbegin ();
ITR != x.desgarrar(); ITR ++)

cout<< *itr<< " ";


int main ()

establecer x;
\X.insertar (600);
X.insertar (400);
X.insertar (800);
X.insertar (700);
X.insertar (200);
pantalla (x);
regresar 0;

Al comienzo del programa, integramos el archivo de encabezado . También utilizamos el espacio de nombres estándar. Hemos utilizado el método Void Display () para exhibir el contenido del conjunto. Para almacenar estos componentes, hemos declarado la variable 'x'. Hemos usado un bucle 'para' para indicar los elementos. Los procedimientos rbegin () y rend () se aplican dentro del bucle for for bucle. El rbegin () es un método incorporado que proporciona un iterador inverso apuntando al último componente de la lista.

El rend () también es el método incorporado que genera un iterador inverso que conduce al componente hipotético que precede al primer componente en la lista. Se genera un iterador, y comenzaría y continuaría hasta que alcance el final de la lista incrementando en cada bucle.

Después de eso, utilizamos el comando 'Cout' para obtener el puntero del iterador. La función principal () se invoca luego. En este caso, los números se ingresan en un orden aleatorizado. La función Insert () se usa para incorporar enteros en una lista. Por lo tanto, aplicaremos el método Display () para mostrar todos los números en la lista. Al final, ingresamos el comando 'return 0' para finalizar el programa.

Conclusión

En este artículo, hemos discutido varios métodos para iterar a través de la lista en C++. Estaremos a través de una lista con la ayuda de un iterador, rango de rango para bucle y iterador inverso. Todas estas metodologías se han descrito en algunos programas.