b站视频学习,代码如下:
class Node(object):
def __init__(self, elem, next=None):
self.elem = elem
self.next = next
class SingerLinkList(object):
def __init__(self, node=None):
self.head = node
def length(self):
current = self.head
count = 1
while current != None:
count += 1
current = current.next
return count
if __name__ == "__main__":
l1 = SingerLinkList()
print(l1.length())
问题现象:和up主相同的代码片段,我这边返回结果不一致。
问题:
为什么SingerLinkList类中的length方法中的current可以直接使用 Node类中的next属性?
在SingerLinkList没有继承Node类或是在length方法中没有实例化 Node类,就直接使用 current.next?
或是有什么其他方法可以解决这个问题,有正确的length方法的代码可以提供下