Python链接列表搜索
我正在用Python为链表编写代码,下面是部分代码:Python链接列表搜索,python,data-structures,linked-list,Python,Data Structures,Linked List,我正在用Python为链表编写代码,下面是部分代码: class LinkedList: def __init__(self): self.head = None def search(self, n, value): if n is None: return False elif n.data == value: return True else:
class LinkedList:
def __init__(self):
self.head = None
def search(self, n, value):
if n is None:
return False
elif n.data == value:
return True
else:
return search(n.next, value)
def append(self, new_value):
if self.head is None:
self.head = LinkedListNode(new_value)
else:
node = self.head
while node.next != None:
node = node.next
node.next = LinkedListNode(new_value)
def remove(self, position):
if position > 0:
node = self.head
l = 0
while node != position - 1:
l += 1
node = node.next
node.next = node.next.next
elif position == 0:
self.head = self.head.next
我只是想知道如何实现
search()
方法?我想我的想法是对的,但它不起作用。谢谢大家! 在同一类内调用该方法时,需要使用self
对其进行限定
def search(self, n, value):
if n is None:
return False
elif n.data == value:
return True
else:
return self.search(n.next, value) # <--
def search_from_head(self, value):
return self.search(self.head, value)