logo

C++ lista

  • A lista egy összefüggő tároló, míg a vektor egy nem szomszédos tároló, azaz a lista az elemeket egy szomszédos memóriában tárolja, a vektor pedig egy nem szomszédos memóriában.
  • A vektor közepén történő beszúrás és törlés nagyon költséges, mivel sok időt vesz igénybe az összes elem eltolása. A hivatkozáslista megoldja ezt a problémát, és a listatároló segítségével valósítja meg.
  • A lista támogatja a kétirányú beállítást, és hatékony módot biztosít a beillesztési és törlési műveletekhez.
  • A bejárás lassú a listában, mivel a listaelemek egymás után érhetők el, míg a vektor támogatja a véletlenszerű hozzáférést.

Sablon a listához

 #include #include using namespace std; int main() { list l; } 

Létrehoz egy üres listát az egész típusú értékekből.

A lista a paraméterekkel is inicializálható.

 #include #include using namespace std; int main() { list l{1,2,3,4}; } 

A lista kétféleképpen inicializálható.

 list new_list{1,2,3,4}; or list new_list = {1,2,3,4}; 

C++ függvények listája

A lista tagfunkciói a következők:

Módszer Leírás
insert() Beszúrja az új elemet az iterátor által megjelölt pozíció elé.
visszavet() Új elemet ad hozzá a vektor végéhez.
push_front() Új elemmel egészíti ki az előlapot.
pop_back() Törli az utolsó elemet.
pop_front() Törli az első elemet.
üres() Ellenőrzi, hogy a lista üres-e vagy sem.
méret() Megkeresi a listában lévő elemek számát.
max_size() Megkeresi a lista maximális méretét.
elülső() A lista első elemét adja vissza.
vissza() A lista utolsó elemét adja vissza.
csere() Két listát cserél, ha a lista típusa megegyezik.
fordított() Megfordítja a lista elemeit.
fajta() A lista elemeit növekvő sorrendbe rendezi.
összeolvad() Egyesíti a két rendezett listát.
splice() Új listát szúr be a meghívó listába.
egyedi() Ez eltávolítja az összes ismétlődő elemet a listáról.
átméretezés() Megváltoztatja a listatároló méretét.
hozzárendelni() Új elemet rendel a listatárolóhoz.
elhelyezkedés() Új elemet szúr be egy megadott helyre.
emplace_back() Új elemet szúr be a vektor végére.
emplace_front() Új elemet szúr be a lista elejére.