Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x python中链表的实现_Python 3.x_Linked List - Fatal编程技术网

Python 3.x python中链表的实现

Python 3.x python中链表的实现,python-3.x,linked-list,Python 3.x,Linked List,我正在学习如何使用链表,并希望添加一个值,删除一个值,并测试一个值是否在链表中。我正在努力解决如何测试一个值并删除一个值 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,

我正在学习如何使用链表,并希望添加一个值,删除一个值,并测试一个值是否在链表中。我正在努力解决如何测试一个值并删除一个值

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):

要测试某个值是否在LinkedList中,您必须浏览列表并检查每个项目

def contains(self, testValue):
    ptr = self.firstLink
    while ptr != None:
        if ptr.value == testValue:
            return True
        ptr = ptr.next
    return False
使用remove()方法时,通常不会选择要删除的项目。Remove方法应仅删除添加到LinkedList的最后一项。后进先出

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

要了解有关链表的更多信息,或者了解如何在python中实现LinkedList中的“remove element”,请访问此网站。这里有很好的解释

你在挣扎什么,为什么?谢谢!这个网站也很有用。@Greta很高兴我能帮上忙