给定二叉树。检查它是否是求和树。
【算法题(如何实现求和树())】二叉树是一个求和树, 其中每个节点x的值等于其左子树和右子树中存在的节点之和。空树也是求和树, 因为可以将空树的和视为0。叶节点也被视为求和树。
范例1:
Input:
3
/\
12Output: 1
Explanation: The given tree is a sum
tree so return a boolean true.
范例2:
Input:10
/\
2030
/\
1010Output: 0
Explanation: The given tree is not a sum
tree. For the root node, sum of elements
in left subtree is 40 and sum of elements
in right subtree is 30. Root element = 10
which is not equal to 30+40.
你的任务:
你不需要读取输入或打印任何东西。完成函数isSumTree(),它接受根节点作为输入参数,如果树是SumTree则返回true,否则返回false。
预期时间复杂度:O(N)
预期辅助空间:O(树高)
限制条件:
1≤节点数≤10^4
推荐阅读
- 算法题(如何连接树中相同层级的节点())
- 如何解决0-1背包问题(| DP-10(动态规划))
- C/C++棘手程序集锦和详细介绍
- 6秘技让xp系统迅速完成开关机
- 伪IE图标删除?高手简单搞定
- 高手教你辨别ARP欺骗原理及防范被骗
- 简单几招处理局域网不能互相访问故障
- 玩转XP上网无忧?3款软件容易搞定
- 盘点windows下那些鲜为人知的ftp命令