- Lista este un container contiguu, în timp ce vectorul este un container necontiguu, adică listă stochează elementele într-o memorie adiacentă și vectorul stochează într-o memorie necontiguă.
- Inserarea și ștergerea în mijlocul vectorului este foarte costisitoare, deoarece este nevoie de mult timp pentru deplasarea tuturor elementelor. Linklist depășește această problemă și este implementat folosind listă container.
- List acceptă un bidirecțional și oferă o modalitate eficientă pentru operațiunile de inserare și ștergere.
- Traversarea este lentă în listă, deoarece elementele listei sunt accesate secvenţial, în timp ce vectorul acceptă un acces aleatoriu.
Șablon pentru listă
#include #include using namespace std; int main() { list l; }
Acesta creează o listă goală de valori de tip întreg.
Lista poate fi inițializată și cu parametrii.
#include #include using namespace std; int main() { list l{1,2,3,4}; }
Lista poate fi inițializată în două moduri.
list new_list{1,2,3,4}; or list new_list = {1,2,3,4};
Funcții de listă C++
Următoarele sunt funcțiile membrilor listei:
Metodă | Descriere |
---|---|
introduce() | Inserează noul element înainte de poziția indicată de iterator. |
împinge înapoi() | Se adaugă un nou element la sfârșitul vectorului. |
push_front() | Adaugă un nou element în față. |
pop_back() | Acesta șterge ultimul element. |
pop_front() | Acesta șterge primul element. |
gol() | Verifică dacă lista este goală sau nu. |
mărimea() | Găsește numărul de elemente prezente în listă. |
max_size() | Găsește dimensiunea maximă a listei. |
față() | Returnează primul element al listei. |
înapoi() | Returnează ultimul element al listei. |
swap() | Schimbă două liste atunci când tipul ambelor liste este același. |
verso() | Acesta inversează elementele listei. |
fel() | Sortează elementele listei într-o ordine crescătoare. |
combina() | Acesta îmbină cele două liste sortate. |
lipitură() | Inserează o nouă listă în lista de invocare. |
unic() | Îndepărtează toate elementele duplicate din listă. |
redimensiona() | Schimbă dimensiunea containerului listei. |
atribui() | Acesta atribuie un nou element containerului listă. |
Locație() | Inserează un nou element într-o poziție specificată. |
plasează_înapoi() | Inserează un nou element la sfârșitul vectorului. |
emplace_front() | Inserează un nou element la începutul listei. |