数据结构:单向循环链表(三)
单向循环链表的操作
travel() 遍历链表中所有元素
思路:跟之前的单链表一样,循环输出即可;要注意的是最后一个节点时,此时cur.next指向头节点,而没有进入循环,而cur指向该节点,跳出循环后,单独把最后一个节点的元素打印出来就可以了(当链表中只有一个元素,也可以处理)
注意:同时也要考虑链表为空时,循环没办法进入,要单独判断
class SingleNode(object):
def __init__(self,item):
self.item=item
self.head=None
class SinCycLinkedlist(object):
def __init__(self, node=None):
self.__head=node
while node:
node.next=self.__head
def travel(self):
if self.__head==None:
return
cur=self.__head
while cur.next != self.__head:
print(cur.item)
cur=cur.next
print(cur.item)

浙公网安备 33010602011771号