Junior — Middle
Можете ли објаснити шта је повезани списак и како функционише?
sobes.tech АИ
Одговор од АИ
Povezana lista je struktura podataka koja se sastoji od čvorova, gde svaki čvor sadrži podatke i referencu na sledeći čvor u listi. Za razliku od nizova, povezane liste ne zahtevaju kontinuirani blok memorije i omogućavaju efikasno umetanje i brisanje elemenata.
Glavne vrste povezanih lista:
- Jednostruko povezana lista: svaki čvor sadrži referencu samo na sledeći čvor.
- Dvosmerno povezana lista: svaki čvor sadrži reference na sledeći i prethodni čvor.
Primer jednostruko povezane liste u JavaScript (Node.js):
class Node {
constructor(value) {
this.value = value;
this.next = null;
}
}
class LinkedList {
constructor() {
this.head = null;
}
add(value) {
const newNode = new Node(value);
if (!this.head) {
this.head = newNode;
} else {
let current = this.head;
while (current.next) {
current = current.next;
}
current.next = newNode;
}
}
}
Povezane liste su korisne kada je potrebno dinamički menjati veličinu strukture i često vršiti umetanje/brisanje elemenata.