Junior — Middle
Ar galite paaiškinti, kas yra susietas sąrašas ir kaip jis veikia?
sobes.tech AI
Atsakymas iš AI
Susijęs sąrašas yra duomenų struktūra, sudaryta iš mazgų, kur kiekvienas mazgas turi duomenis ir nuorodą į kitą sąrašo mazgą. Skirtingai nuo masyvų, susiję sąrašai nereikalauja nuoseklios atminties blokų ir leidžia efektyviai įterpti ir ištrinti elementus.
Pagrindiniai susijusių sąrašų tipai:
- Vienpusis susijęs sąrašas: kiekvienas mazgas turi tik nuorodą į kitą mazgą.
- Dviejų krypčių susijęs sąrašas: kiekvienas mazgas turi nuorodas tiek į kitą, tiek į ankstesnį mazgą.
Pavyzdys vienpusio susijusio sąrašo 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;
}
}
}
Susiję sąrašai yra naudingi, kai reikia dinamiškai keisti struktūros dydį ir dažnai įterpti ar ištrinti elementus.