Lista conectată

Titlul lucrării: O listă conectată. Liste de sortare

Domeniu: Informatică, Cibernetică și Programare

Descriere: O listă coerentă. Liste de sortare. După cum este bine cunoscut, are întotdeauna o serie de bloc contiguu de memorie care permite accesul rapid la un element arbitrar de matrice de index, dar face dificilă pentru a insera și elimina elemente ca.

Mărime fișier: 51 KB

Lucrarea a fost descărcată: 47 de persoane.

O listă coerentă. Liste de sortare.

După cum se știe, matrice ocupă întotdeauna un bloc contiguu de memorie care permite accesul rapid la un element arbitrar de matrice de index, dar face dificilă pentru a insera și elimina elemente, deoarece aceste operații sunt obligați să efectueze deplasarea toate următoarele elemente. În plus, introducerea unui element într-o matrice dinamică umplută duce la necesitatea de a aloca memorie și de a muta întregul conținut al matricei.

Cea mai simplă listă legată pur și simplu este o secvență liniară de elemente, pentru fiecare dintre acestea, cu excepția ultimului, este cunoscut elementul următor:

Elementele unei astfel de liste pot fi descrise în următoarea formă:

structură N o

ListN ode * următor; // Afișează la următorul element de listă

Accesul la o astfel de listă este furnizat printr-un pointer la primul său element:

ListN ode * head; // Afișează la primul element de listă

Un set tipic de operațiuni din listă include adăugarea, eliminarea și căutarea elementelor, calcularea lungimii listei, traversarea secvențială a elementelor (iterație). Introducerea elementelor în listă este foarte eficientă: pentru aceasta trebuie doar să realocați legăturile numai a două elemente învecinate, la locul între care are loc inserarea:

O astfel de listă vă permite să efectuați ștergerea elementelor la fel de eficient ca inserarea. Cu toate acestea, punerea în aplicare a accesului aleatoriu la elementele prin index în liste este mult mai puțin eficientă decât în ​​matrice.

Exemplul următor arată modul în care se folosește o listă cu o singură listă și se implementează funcțiile de listare a listei pe ecran și de ștergere a memoriei:

// O structură care descrie o listă pur și simplu conectată

// Funcția afișează lista de pe ecran

void printList (const ListNode * cap)

Măsurarea informațiilor: abordări semnificative și alfabetice. Unități de informații. Definirea conceptului de cantitate de informații este destul de dificilă. unul dintre fondatorii matematician american kibirnetiei Klozh Shannon a dezvoltat o abordare probabilistică pentru măsurarea cantității de informații și lucrările privind crearea de calculator a dus la abordarea volumetrică.

Articole similare