Sobes.tech
Назад к вопросам
Junior — Middle
73

Можете объяснить, что такое односвязный список и как он реализуется на Python?

Ответ от нейросети

sobes.tech AI

Односвязный список — это структура данных, состоящая из узлов, где каждый узел содержит данные и ссылку на следующий узел в списке. В отличие от массива, элементы не хранятся в непрерывной области памяти, что позволяет эффективно вставлять и удалять элементы.

Пример реализации односвязного списка на Python:

class Node:
    def __init__(self, data):
        self.data = data
        self.next = None

class SinglyLinkedList:
    def __init__(self):
        self.head = None

    def append(self, data):
        new_node = Node(data)
        if not self.head:
            self.head = new_node
            return
        current = self.head
        while current.next:
            current = current.next
        current.next = new_node

    def print_list(self):
        current = self.head
        while current:
            print(current.data, end=' -> ')
            current = current.next
        print('None')

# Использование
sll = SinglyLinkedList()
sll.append(1)
sll.append(2)
sll.append(3)
sll.print_list()  # Вывод: 1 -> 2 -> 3 -> None