Las listas son contenedores de secuencias que permiten la asignación de memoria no contigua. En comparación con el vector, la lista tiene un recorrido lento, pero una vez que se ha encontrado una posición, la inserción y la eliminación son rápidas. Normalmente, cuando decimos una Lista, hablamos de una lista doblemente enlazada. Para implementar una lista de enlace simple, usamos una lista de reenvío. A continuación se muestra el programa para mostrar el funcionamiento de algunas funciones de List:
CPP
// CPP program to show the implementation of List #include <iostream> #include <iterator> #include <list> using namespace std; // function for printing the elements in a list void showlist(list<int> g) { list<int>::iterator it; for (it = g.begin(); it != g.end(); ++it) cout << '\t' << *it; cout << '\n'; } // Driver Code int main() { list<int> gqlist1, gqlist2; for (int i = 0; i < 10; ++i) { gqlist1.push_back(i * 2); gqlist2.push_front(i * 3); } cout << "\nList 1 (gqlist1) is : "; showlist(gqlist1); cout << "\nList 2 (gqlist2) is : "; showlist(gqlist2); cout << "\ngqlist1.front() : " << gqlist1.front(); cout << "\ngqlist1.back() : " << gqlist1.back(); cout << "\ngqlist1.pop_front() : "; gqlist1.pop_front(); showlist(gqlist1); cout << "\ngqlist2.pop_back() : "; gqlist2.pop_back(); showlist(gqlist2); cout << "\ngqlist1.reverse() : "; gqlist1.reverse(); showlist(gqlist1); cout << "\ngqlist2.sort(): "; gqlist2.sort(); showlist(gqlist2); return 0; }
List 1 (gqlist1) is : 0 2 4 6 8 10 12 14 16 18 List 2 (gqlist2) is : 27 24 21 18 15 12 9 6 3 0 gqlist1.front() : 0 gqlist1.back() : 18 gqlist1.pop_front() : 2 4 6 8 10 12 14 16 18 gqlist2.pop_back() : 27 24 21 18 15 12 9 6 3 gqlist1.reverse() : 18 16 14 12 10 8 6 4 2 gqlist2.sort(): 3 6 9 12 15 18 21 24 27
Funciones utilizadas con la lista
Funciones |
Definición |
---|---|
frente() | Devuelve el valor del primer elemento de la lista. |
espalda() | Devuelve el valor del último elemento de la lista. |
empujar_frente(g) | Añade un nuevo elemento ‘g’ al principio de la lista. |
retroceder (g) | Agrega un nuevo elemento ‘g’ al final de la lista. |
frente_pop() | Elimina el primer elemento de la lista y reduce el tamaño de la lista en 1. |
pop_back() | Elimina el último elemento de la lista y reduce el tamaño de la lista en 1. |
lista::empezar() | La función begin() devuelve un iterador que apunta al primer elemento de la lista. |
lista::fin() | La función end() devuelve un iterador que apunta al último elemento teórico que sigue al último elemento. |
lista rbegin() y rend() | rbegin() devuelve un iterador inverso que apunta al último elemento de la lista. rend() devuelve un iterador inverso que apunta a la posición anterior al comienzo de la lista. |
lista cbegin() y cend() | cbegin() devuelve un iterador de acceso aleatorio constante que apunta al principio de la lista. cend() devuelve un iterador de acceso aleatorio constante que apunta al final de la lista. |
lista crbegin() y crend() | crbegin() devuelve un iterador inverso constante que apunta al último elemento de la lista, es decir, al principio invertido del contenedor. crend() devuelve un iterador inverso constante que apunta al elemento teórico que precede al primer elemento de la lista, es decir, el extremo inverso de la lista. |
vacío() | Devuelve si la lista está vacía (1) o no (0). |
insertar() | Inserta nuevos elementos en la lista antes del elemento en una posición especificada. |
clear() | Elimina un solo elemento o un rango de elementos de la lista. |
asignar() | Asigna nuevos elementos a la lista reemplazando los elementos actuales y cambia el tamaño de la lista. |
retirar() | Elimina todos los elementos de la lista, que son iguales al elemento dado. |
lista::remove_if() | Se utiliza para eliminar todos los valores de la lista que se corresponden con el predicado o la condición dada como parámetro a la función. |
reverso() | Invierte la lista. |
Talla() | Devuelve el número de elementos de la lista. |
redimensionar lista() | Se utiliza para cambiar el tamaño de un contenedor de lista. |
clasificar() | Ordena la lista en orden creciente. |
lista max_size() | Devuelve el número máximo de elementos que puede contener un contenedor de lista. |
lista única() | Elimina todos los elementos consecutivos duplicados de la lista. |
lista::emplace_front() y lista::emplace_back() | La función emplace_front() se usa para insertar un nuevo elemento en el contenedor de la lista, el nuevo elemento se agrega al principio de la lista. La función emplace_back() se usa para insertar un nuevo elemento en el contenedor de la lista, el nuevo elemento se agrega al final de la lista. |
lista::clear() | La función clear() se usa para eliminar todos los elementos del contenedor de la lista, haciéndolo así de tamaño 0. |
lista::operador= | Este operador se utiliza para asignar nuevos contenidos al contenedor reemplazando los contenidos existentes. |
lista::intercambiar() | Esta función se utiliza para intercambiar el contenido de una lista con otra lista del mismo tipo y tamaño. |
empalme de lista() | Se utiliza para transferir elementos de una lista a otra. |
combinación de listas() | Fusiona dos listas ordenadas en una. |
lista emplazar() | Amplía la lista insertando un nuevo elemento en una posición determinada. |
Artículos recientes en la lista de C++
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA