递归函数:python递归
我有这个功能:递归函数:python递归,python,function,recursion,Python,Function,Recursion,我有这个功能: def depth(self): if self.root == None: return 0 left = depth(self.left) right = depth(self.right) if left>right: return left+1 else: return right+1 但当我运行它时,会弹出以下错
def depth(self):
if self.root == None:
return 0
left = depth(self.left)
right = depth(self.right)
if left>right:
return left+1
else:
return right+1
但当我运行它时,会弹出以下错误:
File "/Users/suryakannan/Documents/Python Programs/binaryTree.py", line 60, in depth
left = depth(self.left)
NameError: name 'depth' is not defined
那么,我应该怎么做来修复这个函数呢?因为
深度
是一个实例方法,所以您需要使用self
引用
def depth(self):
if self.root == None:
return 0
left = self.depth(self.left)
right = self.depth(self.right)
if left>right:
return left+1
else:
return right+1
由于
depth
是一种实例方法,因此需要使用self
引用
def depth(self):
if self.root == None:
return 0
left = self.depth(self.left)
right = self.depth(self.right)
if left>right:
return left+1
else:
return right+1
试一试
self.depth(self.lenght)
,既然它在一个班级里,就应该是self.depth(self.lenght)
,既然它在一个班级里,就应该是self.depth(self.lenght)
,谢谢你对我的帮助。我真的很感激每一个为我做出贡献的人,非常感谢你对我的帮助。我真的很感谢每一位为我做出贡献的人