Funciones de lista STL en C ++ (Standard Template Library)

C ++ STL – Funciones de lista: Aquí, vamos a aprender acerca de las funciones de la lista de en C ++ Biblioteca de plantillas estándar (STL C ++) .

A continuación se presentan las funciones de lista STL C ++ (funciones miembro class) que se puede utilizar public operaciones diferentes de la lista, las funciones son

Función
Descripción
Sintaxis (considere ‘lista’ es el nombre de cualquier lista de números enteros)

vaciar () Comprueba si lista dada está vacía o no. Devuelve 1 (verdadero) si la lista está vacía si no devuelve 0 (falso). list.empty ();
size () tamaño de devoluciones de la lista list.size ();
sort () Ordena la lista en orden ascendente list.sort ();
inversa () revierte la lista (elementos de la lista) list.reverse ();
remove () Elimina todas las apariciones de elementos dados de la lista. list.remove (elemento);
remove_if () Quitar conjunto de los elementos en función de la condición de prueba (si las condiciones de ensayo es cierto for el elemento, el elemento se eliminará y es aplicable en todas las ocurrencias del elemento que satisfacer la condición de prueba). list.remove_if (test_condition);
frontal () Devuelve el primer elemento de la lista list.front ();
atrás () Devuelve el último elemento de la lista list.back ();
push_front () Inserta el elemento en la parte delantera (inicio) a la lista list.push_front (elemento);
push_back () insertar el elemento en la parte posterior (extremo) a la lista list.push_back (elemento);
pop_front () elimina el elemento de la parte frontal (inicio) de la lista list.pop_front ();
pop_back () elimina el elemento de la parte posterior (extremo) de la lista list.pop_back ();
insert () Inserta el elemento en el índice / posición especificada list.insert (iterator_position, elemento);
O
list.insert (iterator_positon, number_of_elements, elemento);
begin () y al final () class el iterador apunta primero y último elemento de la lista list.begin (); y list.end ();
rbegin () y rend () class el iterador que señala primero y último elemento de la lista (en orden inverso) es decir, primer elemento será considerado como última y última se considera como primera list.rbegin (); y list.rend ();
Asignar () asigna el nuevo conjunto de elementos o sustituye a la actual con el nuevo conjunto de elementos list.assign (n, elemento)
// asignará elemento
‘ ‘, ‘n’ veces a la lista
merge () Se combina dos listas. list1.merge (list2);
único () Se elimina elementos consecutivos de la lista. list.unique ();
de borrado () Se elimina el índice especificado o el índice de la gama dada (index1, index2), esta función se puede utilizar mediante la definición de las posiciones utilizando iterador. list.erase (iterator_position);
O
list.erase (iterator_position1, iterator_position2);

Ref: Lista en C ++ STL

Ejemplo

#include <iostream>
#include <list>
using namespace std;
//function to print the list
void displayList(list<int> L){
//declaring interator to the list
list<int>::iterator l_iter;
for(l_iter = L.begin(); l_iter !=L.end(); l_iter++)
cout<<*l_iter<< " ";
cout<<endl;
}
//Main function
int main() {
list<int> ilist;
//empty();
if(ilist.empty())
cout<<"List is empty"<<endl;
else
cout<<"List of not empty"<<endl;
//push_front() and push_back()
ilist.push_front(10);
ilist.push_front(20);
ilist.push_front(30);
ilist.push_front(11);
ilist.push_front(22);
ilist.push_back(40);
ilist.push_back(50);
cout<<"List elemets aftre push_front(), push_back()"<<endl;
displayList(ilist);
//insert()
list<int>::iterator it;
it = ilist.begin();
ilist.insert(it,100);
ilist.insert(it,200);
ilist.insert(it,300);
cout<<"List element after insert()"<<endl;
displayList(ilist);
//size()
cout<<"size of the list is: "<<ilist.size()<<endl;
//sort()
ilist.sort();
cout<<"List elements after sort()"<<endl;
displayList(ilist);
//reverse()
ilist.reverse();
cout<<"List elements after reverse()"<<endl;
displayList(ilist);
//remove()
//removeing 100 from the List
ilist.remove(100);
cout<<"List elements after remove()"<<endl;
displayList(ilist);
//remove_if()
//removeing elements divisible by 50
ilist.remove_if([](int n) {return (n%50==0); });
cout<<"List elements after remove_if()"<<endl;
displayList(ilist);
//front() and back()
cout<<"First (front) element of the list: "<<ilist.front()<<endl;
cout<<"Last (back) element of the list: "<<ilist.back()<<endl;
//pop_front() and pop_back()
ilist.pop_front();
ilist.pop_back();
cout<<"List element are pop_front() and pop_back()"<<endl;
displayList(ilist);
//begin() and end()
//printing all elements with begin(() and end()
//begin() and end() can be used with iterator
list<int>::iterator l_itr;
cout<<"List elements (using begin() and end()"<<endl;
for (l_itr = ilist.begin(); l_itr != ilist.end(); l_itr++)
cout<< *l_itr<< " ";
cout<<endl;
//rbegin() and rend()
//printing all elements witn rbegin() and rend()
//rbegin() and rend() can be used with reverse_iterator
list<int>::reverse_iterator l_ritr;
cout<<"List elements (using rbegin() and rend()"<<endl;
for (l_ritr = ilist.rbegin(); l_ritr != ilist.rend(); l_ritr++)
cout<< *l_ritr<< " ";
cout<<endl;
//assign()
list<int> list2;
list2.assign(5,100);
cout<<"List2 elements after assign()"<<endl;
displayList(list2);
//merge()
ilist.merge(list2);
cout<<"List elements after merge()"<<endl;
displayList(ilist);
//unique()
ilist.unique();
cout<<"List elements after unique()"<<endl;
displayList(ilist);
//erase()
//it can be used with the iterator
it = ilist.begin();
ilist.erase(it);
cout<<"List elements after erase()"<<endl;
displayList(ilist);
return 0;
}

salida

List is empty
List elemets aftre push_front(), push_back()
22 11 30 20 10 40 50
List element after insert()
100 200 300 22 11 30 20 10 40 50
size of the list is: 10
List elements after sort()
10 11 20 22 30 40 50 100 200 300
List elements after reverse()
300 200 100 50 40 30 22 20 11 10
List elements after remove()
300 200 50 40 30 22 20 11 10
List elements after remove_if()
40 30 22 20 11 10
First (front) element of the list: 40
Last (back) element of the list: 10
List element are pop_front() and pop_back()
30 22 20 11
List elements (using begin() and end()
30 22 20 11
List elements (using rbegin() and rend()
11 20 22 30
List2 elements after assign()
100 100 100 100 100
List elements after merge()
30 22 20 11 100 100 100 100 100
Listelements after unique()
30 22 20 11 100
List elements after erase()
22 20 11 100


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *