用 Python 检查树中所有值是否相同的程序
pythonserver side programmingprogramming更新于 2026/2/4 19:24:17
假设我们有一个二叉树,我们必须检查树中的所有节点是否具有相同的值。
因此,如果输入如下

则输出将为 True
为了解决这个问题,我们将遵循以下步骤 −
定义一个函数solve()。这将取根,并且 val
如果 root 为空,则
返回 True
如果 val 未定义,则
val := root 的值
当 root 的值与 val 相同且 resolve(left of root, val) 和 resolve(right of root, val) 也为真时返回 true
让我们看看下面的实现以便更好地理解 −
示例
class TreeNode: def __init__(self, val, left=None, right=None): self.val = val self.left = left self.right = right class Solution: def solve(self, root, val=None): if not root: return True if val is None: val = root.val return root.val == val and self.solve(root.left, val) and self.solve(root.right, val) ob = Solution() root = TreeNode(5) root.left = TreeNode(5) root.right = TreeNode(5) root.left.left = TreeNode(5) root.left.right = TreeNode(5) print(ob.solve(root))
输入
root = TreeNode(5) root.left = TreeNode(5) root.right = TreeNode(5) root.left.left = TreeNode(5) root.left.right = TreeNode(5)
输出
True
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

