logo

C++ lista

  • Lista on vierekkäinen säiliö, kun taas vektori on ei-jatkuva kontti, ts. luettelo tallentaa elementit vierekkäiseen muistiin ja vektori tallentaa ei-jatkuvaan muistiin.
  • Lisääminen ja poistaminen vektorin keskellä on erittäin kallista, koska kaikkien elementtien siirtäminen vie paljon aikaa. Linklist ratkaisee tämän ongelman ja se toteutetaan luettelosäiliön avulla.
  • Lista tukee kaksisuuntaisuutta ja tarjoaa tehokkaan tavan lisäys- ja poistotoimintoihin.
  • Listan läpikulku on hidasta, koska luettelon elementtejä käytetään peräkkäin, kun taas vektori tukee satunnaiskäyttöä.

Malli luetteloon

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

Se luo tyhjän luettelon kokonaislukutyyppiarvoista.

Lista voidaan myös alustaa parametreilla.

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

Lista voidaan alustaa kahdella tavalla.

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

C++ Listafunktiot

Seuraavat ovat luettelon jäsentoiminnot:

Menetelmä Kuvaus
insert() Se lisää uuden elementin ennen iteraattorin osoittamaa sijaintia.
työnnä takaisin() Se lisää uuden elementin vektorin loppuun.
push_front() Se lisää etuosaan uuden elementin.
pop_back() Se poistaa viimeisen elementin.
pop_front() Se poistaa ensimmäisen elementin.
tyhjä() Se tarkistaa, onko luettelo tyhjä vai ei.
koko() Se etsii luettelossa olevien elementtien määrän.
max_size() Se löytää luettelon enimmäiskoon.
edessä () Se palauttaa luettelon ensimmäisen elementin.
takaisin() Se palauttaa luettelon viimeisen elementin.
vaihtaa() Se vaihtaa kaksi listaa, kun kummankin luettelon tyyppi on sama.
käänteinen() Se kääntää luettelon elementit päinvastaiseksi.
järjestellä() Se lajittelee luettelon elementit kasvavassa järjestyksessä.
yhdistää() Se yhdistää kaksi lajiteltua luetteloa.
liitos() Se lisää uuden luettelon kutsuluetteloon.
ainutlaatuinen() Se poistaa kaikki päällekkäiset elementit luettelosta.
muuta kokoa() Se muuttaa luettelosäiliön kokoa.
assign() Se määrittää luettelosäilölle uuden elementin.
sijainti() Se lisää uuden elementin määritettyyn kohtaan.
emplace_back() Se lisää uuden elementin vektorin loppuun.
emplace_front() Se lisää uuden elementin luettelon alkuun.