定义
循环单链表与单链表唯一的不同就是其最后一个结点并非None,而是指向第一个结点(如果有头结点,就是指向头结点)
python实现
创建循环单链表
class Node:
def __init__(self,data):
self.data = data
self.next = None
class CircularSingleLinkedList:
def __init__(self):
self.head = Node(None)
'''创建循环单链表'''
def CreateCircularSingleLinkedList(self):
data = input("请输入结点的值(按#结束输入):")
cNode = self.head
while data != "#":
nNode = Node(int(data))
cNode.next = nNode
nNode.next = self.head
cNode = cNode.next
data = input("请输入结点的值(按#结束输入):")
CircularSingleList = CircularSingleLinkedList()
CircularSingleList.CreateCircularSingleLinkedList()
结果:

循环单链表首端插入元素
class Node:
def __init__(self,data):
self.data = data
self.next = None
class CircularSingleLinkedList:
def __init__(self):
self.head = Node(None)
'''创建循环单链表'''
def CreateCircularSingleLinkedList(self):
data = input("请输入结点的值(按#结束输入):")
cNode = self.head
while data != "#":
nNode = Node(int(data))
cNode.next = nNode
nNode.next = self.head
cNode = cNode.next
data = input("请输入结点的值(按#结束输入):")
'''首端插入元素'''
def InsertElementInHead(self):
element = input("请输入要插入的值:")
cNode = self.head
nNode = Node(int(element))
nNode.next = cNode.next
cNode.next = nNode
CircularSingleList = CircularSingleLinkedList()
CircularSingleList.CreateCircularSingleLinkedList()
CircularSingleList.InsertElementInHead()
结果:

循环单链表尾端插入元素
class Node:
def __init__(self,data):
self.data = data
self.next = None
class CircularSingleLinkedList:
def __init__(self):
self.head = Node(None)
'''创建循环单链表'''
def CreateCircularSingleLinkedList(self):
data = input("请输入结点的值(按#结束输入):")
cNode = self.head
while data != "#":
nNode = Node(int(data))
cNode.next = nNode
nNode.next = self.head
cNode = cNode.next
data = input("请输入结点的值(按#结束输入):")
'''尾端插入元素'''
def InsertElementInTail(self):
element =
本文介绍了如何在Python中实现循环单链表,包括创建、首尾插入元素、删除指定元素、获取长度、判断空链表、销毁链表、指定位置插入节点、获取指定位置节点值及遍历链表等操作。
最低0.47元/天 解锁文章
377

被折叠的 条评论
为什么被折叠?



