数据结构:单向循环链表(五)
单向循环链表的操作
search(item) 查找元素在不在链表当中
思路:1、当链表为空,直接返回False
2、循环遍历查找,循环条件:cur.next != self.__head 在循环里面进行判断 cur.item == item
3、当cur.next = self.__head的时候,cur指向最后一个节点(即尾节点),不满足循环条件,所以需要单独判断一下,之后的情况就返回False
class Node(object):
"""节点"""
def __init__(self, item):
self.item = item
self.next = None
class SinCycLinkedlist(object):
def __init__(self,node=None):
self.__head=node
while node:
node.next=self.__head
def search(self,item):
if self.__head==None:
return False
cur=self.__head
while cur.next != self.__head:
if cur.item==item:
return True
cur=cur.next
if cur.item==item:
return True
return False

浙公网安备 33010602011771号