Pythonで連結リストを実装するためには、ノードを表すクラスを定義する必要があります。以下に、基本的な連結リストの実装例を示します。
class Node:
def __init__(self, data):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def add_to_beginning(self, data):
new_node = Node(data)
new_node.next = self.head
self.head = new_node
上記のコードでは、NodeクラスとLinkedListクラスを定義しています。Nodeクラスは、データ要素と次のノードへの参照を持つオブジェクトです。LinkedListクラスは、連結リストの先頭ノードを保持するhead属性を持ちます。
add_to_beginningメソッドは、新しいノードを作成し、その次のノードを現在の先頭ノードに設定し、新しいノードを先頭ノードとして設定します。これにより、要素が連結リストの先頭に追加されます。
以下は、連結リストに要素を追加する具体的な例です。
# 空の連結リストを作成
linked_list = LinkedList()
# 要素を追加
linked_list.add_to_beginning(3)
linked_list.add_to_beginning(2)
linked_list.add_to_beginning(1)
# 連結リストの要素を表示
current = linked_list.head
while current:
print(current.data)
current = current.next
上記のコードを実行すると、以下の結果が得られます。
1
2
3
このように、add_to_beginningメソッドを使用することで、Pythonで連結リストの先頭に要素を追加することができます。