我的疑问是当我设置 A.next=None 时,kam 变量不应该也存储 None 吗?为什么还是指向节点6?
class Node:
def __init__(self, data): # data -> value stored in node
self.data = data
self.next = None
a=Node(5)
b=Node(6)
c=Node(7)
d=Node(8)
a.next=b
b.next=c
c.next=d
kam=a.next
a.next=None
while kam is not None:
print(kam.data)
kam=kam.next
最佳答案
那是因为你把a
实例的next
属性设为None,而不是c
节点。当 Python 运行 kam=a.next
时,真正发生的是 kam
变成 a.next
指向的任何值。如果您稍后更改 a.next
,则并不意味着 kam
会更改。
关于python - 链表队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57745368/