2017-10-20 143 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

@格雷塔很高興我能幫到你 –