Python之循环链表

循环链表是在单单链表的基础上,将链表的头和尾链接起来,组成一个循环。

使用python实现

class ListNode():
    def __init__(self,data):
        self.head = data
        self.next = None
#判断列表是否为空
def isempty(self):
    return self.head == None
#在头部添加元素
def nodes_head(self,data):
    if isempty(self):
        self.head = data
        self.next = self
        return self
    else:
        newnode = ListNode(None)
        newnode.head = data
        newnode.next = self
        p = self
        while p.next != self:
            p = p.next
        p.next = newnode
        #返回头部节点
        return newnode
#尾部添加元素
def nodes_tail(self,data):
    if isempty(self):
        self.read = data
        self.next = self
    else:
        p = self
        node = ListNode(None)
        node.head = data
        while p.next != self:
            p = p.next
        p.next = node
        node.next = self
#在指定位置插入元素
def nodes

你可能感兴趣的:(python,数据结构,链表,python,数据结构,单链表)