Junior — Middle
Можете ли да обясните какво представлява свързаният списък и как е устроен?
sobes.tech AI
Отговор от AI
Свързаният списък е структура от данни, състояща се от възли, където всеки възел съдържа данни и препратка към следващия възел в списъка. За разлика от масивите, свързаните списъци не изискват последователен блок памет и позволяват ефективно вмъкване и изтриване на елементи.
Основни видове свързани списъци:
- Еднопосочен свързан списък: всеки възел съдържа само препратка към следващия възел.
- Двупосочен свързан списък: всеки възел съдържа препратки както към следващия, така и към предишния възел.
Пример за еднопосочен свързан списък на 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;
}
}
}
Свързаните списъци са полезни, когато е необходимо динамично изменение на размера на структурата и чести вмъквания/изтривания на елементи.