2024-04-25 19:56:54 发布
网友
我知道如何处理二叉树,但不知道如何处理标准树
这不太好用,我不明白出了什么问题
类节点:
def __init__(self,V): self.id=V self.f=[] def height(n): if n==None: return -1 if n.f==None: return 0 for x in n.f: return height(x)+1
谢谢你的帮助
您不希望在for循环中返回:
for x in n.f: return height(x)+1
只需查看一个项目并返回。而是查找子对象高度的最大值:
class Node: def __init__(self,V): self.id = V self.f = [] def height(self): if len(self.f) == 0: return 1 return max(x.height() + 1 for x in self.f) n = Node(1) n.f = [Node(10), Node(11), Node(12)] n.f[0].f = [Node(20)] n.height() # 3
您不希望在for循环中返回:
只需查看一个项目并返回。而是查找子对象高度的最大值:
相关问题 更多 >
编程相关推荐