【发布时间】:2021-06-07 10:08:13
【问题描述】:
我编写了一个创建单个链接列表的程序,现在我试图删除整个列表。
首先,我将 self.head 分配给一个名为 current 的变量,但该函数不起作用,程序会打印整个列表。
"""
def deleteLinkedList(self):
current = self.head
while current is not None:
nextNode = current.next
current = None
current = nextNode
"""
结果:
但是,当我更改代码时,程序打印的列表是空的。
新代码:
"""
def deleteLinkedList(self):
while self.head is not None:
nextNode = self.head.next
self.head = None
self.head = nextNode
"""
结果:
我不明白为什么第二个代码有效而第一个无效。为什么我使用变量而不是 self.head 时节点没有被删除?
【问题讨论】: