Python程序创建N个节点的循环链接列表并计算节点数

当需要创建一个具有“ N”个节点的循环链表并获取节点数时,需要创建一个“节点”类。为了显示循环列表中的数据元素,可以定义另一种方法来显示数据。在此类中,有两个属性,即节点中存在的数据和对链表的下一个节点的访问。在圆形链表中,头部和后部彼此相邻。

它们连接形成一个圆,并且在最后一个节点中没有'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

解释

  • 将创建“节点”类。

  • 创建另一个具有必需属性的“ linked_list”类。

  • 定义了另一个名为“ add_data”的方法,该方法用于将数据添加到循环链表中。

  • 定义了另一个名为“ print_it”的方法,该方法用于在控制台上显示链接列表数据。

  • 创建了“ linked_list”类的对象,并在其上调用方法以添加数据。

  • 这使用“ print_it”方法显示在控制台上。