@clifford
Кольцевой список в Python можно реализовать с помощью классов и ссылок на объекты.
Вот пример реализации кольцевого списка в Python:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
class Node: def __init__(self, data): self.data = data self.next = None class CircularLinkedList: def __init__(self): self.head = None def insert(self, data): new_node = Node(data) if self.head is None: self.head = new_node new_node.next = self.head else: temp = self.head while temp.next != self.head: temp = temp.next temp.next = new_node new_node.next = self.head def display(self): if self.head is None: print("List is empty") else: temp = self.head while True: print(temp.data, end=" ") temp = temp.next if temp == self.head: break # Пример использования cll = CircularLinkedList() cll.insert(1) cll.insert(2) cll.insert(3) cll.insert(4) cll.display() |
В этом примере класс Node
представляет отдельный узел списка, который содержит данные и ссылку на следующий узел. Класс CircularLinkedList
представляет сам кольцевой список и содержит методы для вставки элементов (insert
) и отображения списка (display
).
Пример использования добавляет несколько элементов в кольцевой список и затем отображает его содержимое.