Python Circular Linked List Program
リンクリストを生成するPythonプログラムを作成する必要がある場合は、「Node」クラスを作成する必要があります。循環リストのデータ要素を表示するために、データを表示する別のメソッドを定義できます。このクラスには、ノードに存在するデータと、リンクリストの次のノードへのアクセスという2つの属性があります。循環リンクリストでは、ヘッドとリアが互いに隣接しています。それらは円を形成するように接続されており、最後のノードに「NULL」値はありません。
初期化関数を持つ別の「linked_list」クラスを作成する必要があり、ノードのヘッドは「None」に初期化されます。
以下は同じのデモンストレーションです-
例
class Node:
def __init__(self, my_data):
self.data = my_data
self.next = None
class circularLinkedList:
def __init__(self):
self.head = None
def add_data(self, my_data):
ptr_1 = Node(my_data)
temp = self.head
ptr_1.next = self.head
if self.head is not None:
while(temp.next != self.head):
temp = temp.next
temp.next = ptr_1
else:
ptr_1.next = ptr_1
self.head = ptr_1
def print_it(self):
temp = self.head
if self.head is not None:
while(True):
print("%d" %(temp.data)),
temp = temp.next
if (temp == self.head):
break
my_list = circularLinkedList()
print("Elements are added to the list ")
my_list.add_data (56)
my_list.add_data (78)
my_list.add_data (12)
print("The data is : ")
my_list.print_it() 出力
Elements are added to the list The data is : 12 78 56
説明
- 「Node」クラスが作成されます。
- 必要な属性を持つ別の「circularLinkedList」クラスが作成されます。
- 最初の要素、つまり「head」を「None」に初期化するために使用される「init」関数があります。
- 「add_data」という名前の別のメソッドが定義されています。これは、循環リンクリストにデータを追加するために使用されます。
- リンクリストデータをコンソールに表示するために使用される「print_it」という名前の別のメソッドが定義されています。
- 「linked_list」クラスのオブジェクトが作成され、そのオブジェクトでメソッドが呼び出されてデータが追加されます。
- これは、「print_it」メソッドを使用してコンソールに表示されます。
-
循環リンクリスト内の要素を検索するPythonプログラム
循環リンクリストで要素を検索する必要がある場合は、「ノード」クラスを作成する必要があります。このクラスには、ノードに存在するデータと、リンクリストの次のノードへのアクセスという2つの属性があります。 循環リンクリストでは、ヘッドとリアが互いに隣接しています。それらは円を形成するように接続されており、最後のノードに「NULL」値はありません。初期化関数を持つ別のクラスを作成する必要があり、ノードのヘッドは「なし」に初期化されます。 リンクリストにノードを追加したり、リンクリストで特定のノードを検索したり、ノード値を出力したりするために、ユーザーは複数のメソッドを定義します。 以下は同じのデ
-
Pythonでリンクリストを逆にするプログラム
2になります。 これを解決するために、このアプローチに従います- solve(head、back)のように再帰的にリストの反転を実行する1つの手順を定義します 頭がない場合は、頭を戻します temp:=head.next head.next:=back 戻る:=頭 温度が空の場合は、ヘッドを戻します head:=temp returnsolve(頭、後ろ) 理解を深めるために、次の実装を見てみましょう- 例 class ListNode: def __init__(self, data, next = None): &