2017-10-20 142 views
1

我正在学习如何使用链接列表,并希望添加一个值,删除一个值并测试一个值是否在链接列表中。我正在努力研究如何测试一个值并删除一个值。python中的链接列表实现

class Node(object): 
    def __init__(self, v, n): 
     self.value = v 
     self.next = n 

class LinkedList(object): 
    def __init__(self): 
     self.firstLink = None 
    def add (self, newElement): 
     self.firstLink = Node(newElement, self.firstLink) 
    def test(self, testValue): 

    def remove(self, testValue): 
+0

你在为什么而挣扎?为什么? –

回答

1

要测试一个值是否在你的每一个项目都要经过列表并检查一个LinkedList

def contains(self, testValue): 
    ptr = self.firstLink 
    while ptr != None: 
     if ptr.value == testValue: 
      return True 
     ptr = ptr.next 
    return False 

当使用删除()方法你平时不挑一个项目即将被删除。 Remove方法应该只删除添加到LinkedList的最后一个项目。后进先出。

def remove(self): 
    if self.firstLink == None(): 
     return None 
    else: 
     item = self.firstLink.value 
     self.firstLink = self.firstLink.next 
     return item 

要了解更多关于链表或看看如何可以“删除元素”从LinkedList的Python中实现去这个网站。这里有很好的解释LinkedList

+1

谢谢!该网站是非常有用的。 – Greta

+0

@格雷塔很高兴我能帮到你 –