Listă (STL)

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Containerul List este un container secvențial inclus în biblioteca standard C ++ . Definiția acestei clase se găsește în fișierul header <list> al spațiului de nume std.

Descriere

Lista reprezintă o alternativă la vector , deoarece este mai eficientă atunci când este necesar să se introducă oriunde în container. De fapt, datorită concatenării duble, lista poate fi derulată în ambele direcții cu timp constant de inserare (sau eliminare) (O (1)). Obiectele nu sunt păstrate în zone de memorie adiacente și, prin urmare, nu este posibil accesul direct la ele. Căutarea, pe de altă parte, are loc în timp liniar (O (n)). Lista este gestionată, ca toate containerele STL , prin iteratoare bidirecționale care acceptă operatorii ++ și - pentru trecerea la elementul anterior (-) sau următorul (++).

Operații pe elemente

Lista este deosebit de eficientă în inserarea elementelor sale în poziție, dar este mai puțin eficientă în accesarea lor sau în căutare, deoarece, pentru a găsi un element, este necesar să derulați prin întregul container. Dacă trebuie să efectuați frecvent aceste operațiuni, ar trebui să luați în considerare posibilitatea de a utiliza un container diferit, cum ar fi Harta (STL) .

Iată un exemplu de construire și tipărire a unei liste folosind un Iterator :

 #include <iostream>
#include <list>
folosind spațiul de nume std;
int main () {
   list <int> l;
   l.push_back (1);
   l.push_back (2);
   l.push_back (5);
   for (list <int> :: iterator i = l.begin (); i! = l.end (); i ++)
       cout << * i << endl;
   retur 0;
}
Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT