# 单向循环链接的节点定义
class Node(object):
def __init__(self, item):
self.elem = item
self.next = None
class SingleCircularLinkList(object):
"""单向循环链表,与单链表相比,多了个尾节点指向头结点"""
def __init__(self, node=None):
self.__head = node
if node:
node.next = node
def is_empty(self):
# 判断链表是否是空
return self.__head == None
def length(self):
# 链表长度
if self.is_empty(): # 空链表
return 0
cur = self.__head
count = 1
# 只有一个节点也可以
while cur.next != self.__head:
count += 1
cur = cur.next
return count
def travel(self):
# 遍历整个链表
if self.is_empty():
return
cur = self.__head
# 对于只要一个节点也可以
while cur.next != self.__head:
print(cur.elem, end=" ")
cur = cur.next
# 退出循环时,cur指向为尾节点。打印最后一个节点的值
print(cur.elem)
# 添加元素到链表头部(头插法)
def add(self, item):
nod
python实现单向循环链表的基本操作
最新推荐文章于 2021-01-29 14:34:43 发布
本文介绍如何使用Python创建并操作单向循环链表,包括插入、删除、遍历等基本操作。通过实例代码详细解析了链表的内部结构和逻辑。
摘要由CSDN通过智能技术生成