本文共 902 字,大约阅读时间需要 3 分钟。
在计算二叉树直径时,可以使用递归的方法,通过返回多个值来简化代码结构。以下是详细的步骤:
def diameterOfBinaryTree(root): def traverse(node): if node is None: return (0, 0) left_depth, left_diam = traverse(node.left) right_depth, right_diam = traverse(node.right) depth = 1 + max(left_depth, right_depth) diam = max(left_diam, right_diam, left_depth + right_depth) return (depth, diam) if root is None: return 0 _, diameter = traverse(root) return diameter
这种方法通过递归和返回多个值,简洁高效地解决了二叉树直径的问题。
转载地址:http://gpqqz.baihongyu.com/