Назад к вопросам
Junior — Middle
94
Как отличить связанный список от несвязанного и в чем их основные отличия?
Ответ от нейросети
sobes.tech AI
Связанный список — это структура данных, где каждый элемент (узел) содержит ссылку на следующий элемент (и, в случае двусвязного списка, на предыдущий). Несвязанный список — это просто набор элементов без ссылок между ними, например, массив.
Основные отличия:
-
Связанный список:
- Элементы связаны указателями.
- Удобен для динамического добавления и удаления элементов без сдвига.
- Доступ к элементам последовательный, нет прямого доступа по индексу.
-
Несвязанный список:
- Элементы не связаны между собой.
- Обычно реализуется как массив или коллекция.
- Быстрый доступ по индексу, но операции вставки/удаления могут быть дорогими из-за сдвига элементов.
Пример связанного списка на Java:
class Node {
int data;
Node next;
Node(int data) { this.data = data; }
}
class LinkedList {
Node head;
void add(int data) {
Node newNode = new Node(data);
if (head == null) {
head = newNode;
} else {
Node current = head;
while (current.next != null) {
current = current.next;
}
current.next = newNode;
}
}
}