我试图返回所有路径的长度,以及二叉树的实际路径,其值按叶节点的位置从左到右排序。你知道吗
例如,对于这个二叉树(下图),答案应该是[(3, '4‐2‐1'), (4, '8‐5‐2‐1'), (4, '9‐5‐2‐1'), (2, '7‐1')]
,因为叶节点的路径是“1‐2‐4”(长度3)、“1‐2‐5‐8”(长度4)、“1‐2‐5‐9”(长度4)等等
我尝试过使用递归(下面的示例代码)来计算路径的长度,但一直得到一个TypeError: unsupported operand type(s) for +: 'int' and 'list'
。你知道吗
res = []
count = 0
if T== None:
return 0
lengthL = 1 + self._pathV2(T.leftT)
lengthR = 1+ self._pathV2(T.rightT)
count = lengthR + lengthL
res.append(count)
任何帮助解决这个问题将不胜感激!你知道吗
因为您没有提供完整的代码,所以我无法使用您的代码创建一个编码示例。你知道吗
我通过修改https://www.geeksforgeeks.org/given-a-binary-tree-print-out-all-of-its-root-to-leaf-paths-one-per-line/中的代码创建了一个编码示例,如下所示。你知道吗
用法示例
生成树示例
输出
相关问题 更多 >
编程相关推荐