Python程式:建立N個節點的迴圈連結串列並計數


當需要建立一個包含'N'個節點的迴圈連結串列並獲取節點數量時,需要建立一個'Node'類。為了顯示迴圈連結串列中的資料元素,可以定義另一個方法來顯示資料。在這個類中,有兩個屬性:節點中存在的資料,以及對連結串列中下一個節點的訪問。在迴圈連結串列中,頭節點和尾節點相鄰。

它們連線成一個環,最後一個節點沒有'NULL'值。

還需要建立另一個名為'linked_list'的類,該類將具有一個初始化函式,並且節點的頭將初始化為'None'。

以下是相同的演示 -

示例

線上演示

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

def add_data(head_ref,my_data):
   ptr_1 = Node(0)
   temp = head_ref
   ptr_1.data = my_data
   ptr_1.next = head_ref

   if (head_ref != None) :
      while (temp.next != head_ref):
         temp = temp.next
      temp.next = ptr_1
   else:
      ptr_1.next = ptr_1

   head_ref = ptr_1
   return head_ref

def count_node(head):
   temp = head
   result = 0
   if (head != None) :
      while True :
         temp = temp.next
         result = result + 1
         if (temp == head):
            break  
   return result

if __name__=='__main__':
   head = None
   head = add_data(head, 78)
   head = add_data(head, 56)
   head = add_data(head, 22)
   print("Elements are added to list")
   print("The number of nodes are : ")
   print(count_node(head))

輸出

Elements are added to list
The number of nodes are :
3

解釋

  • 建立了'Node'類。
  • 建立了另一個具有所需屬性的'linked_list'類。
  • 定義了另一個名為'add_data'的方法,用於向迴圈連結串列新增資料。
  • 定義了另一個名為'print_it'的方法,用於在控制檯上顯示連結串列資料。
  • 建立了'linked_list'類的物件,並在其上呼叫方法以新增資料。
  • 這使用'print_it'方法在控制檯上顯示。

更新於:2021年3月13日

瀏覽量:135

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告