Назад к вопросам
СБЕР Роботы
Junior — Middle
71
Можете объяснить, что такое односвязный список и как он устроен?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Односвязный список — это структура данных, состоящая из последовательности элементов (узлов), где каждый узел содержит данные и ссылку (указатель) на следующий узел в списке. В отличие от массива, элементы не хранятся в смежных ячейках памяти, а связаны между собой через ссылки.
Основные характеристики:
- Каждый узел содержит данные и ссылку на следующий узел.
- Первый узел называется головой списка (head).
- Последний узел указывает на None (конец списка).
Пример узла на Python:
class Node:
def __init__(self, data):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def append(self, data):
new_node = Node(data)
if not self.head:
self.head = new_node
return
last = self.head
while last.next:
last = last.next
last.next = new_node
Односвязный список удобен для динамического добавления и удаления элементов, но для доступа к элементам по индексу требуется последовательный обход.