Python程序:创建n个节点的循环链表并逆序显示
需要创建一个循环链表并逆序显示时,需要创建一个名为'Node'的类。
为了逆序显示循环链表中的数据元素,可以定义另一个方法来反转数据。在这个类中,有两个属性:节点中存在的数据,以及对链表中下一个节点的访问。在循环链表中,头节点和尾节点彼此相邻。它们连接成一个圆圈,最后一个节点没有'NULL'值。
还需要创建一个名为'linked_list'的类,该类将具有一个初始化函数,并且节点的头将初始化为'None'。
以下是相同的演示 -
示例
class Node:
def __init__(self, my_data):
self.data = my_data
self.next = None
class linked_list:
def __init__(self):
self.head = None
def add_data(self,my_data):
new_node = Node(my_data)
new_node.next = self.head
self.head = new_node
def reverse(self):
prev = None
current = self.head
while(current is not None):
next = current.next
current.next = prev
prev = current
current = next
self.head = prev
def print_it(self):
temp = self.head
while(temp):
print(temp.data)
temp = temp.next
my_list = linked_list()
my_list.add_data(47)
my_list.add_data(89)
my_list.add_data(34)
my_list.add_data(11)
print("The list is : ")
my_list.print_it()
print("The list is being reversed")
my_list.reverse()
print("The reversed list is : ")
my_list.print_it()输出
The list is : 11 34 89 47 The list is being reversed The reversed list is : 47 89 34 11
解释
- 创建了'Node'类。
- 创建了另一个具有所需属性的'linked_list'类。
- 定义了另一个名为'add_data'的方法,用于向循环链表添加数据。
- 定义了另一个名为'reverse'的方法,用于反转存储在循环链表中的数据。
- 定义了另一个名为'print_it'的方法,用于在控制台上显示链表数据。
- 创建了'linked_list'类的对象,并将数据添加到其中。
- 使用'reverse'方法将其反转。
- 使用'print_it'方法在控制台上显示。
广告
数据结构
网络
关系数据库管理系统(RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP