LeetCode_Java_2236. 判断根结点是否等于子结点之和

2236. 判断根结点是否等于子结点之和

给你一个 二叉树 的根结点 root,该二叉树由恰好 3 个结点组成:根结点、左子结点和右子结点。

如果根结点值等于两个子结点值之和,返回 true ,否则返回 false 。

示例1

LeetCode_Java_2236. 判断根结点是否等于子结点之和_第1张图片

输入:root = [10,4,6]
输出:true
解释:根结点、左子结点和右子结点的值分别是 10 、4 和 6 。
由于 10 等于 4 + 6 ,因此返回 true

代码实现

/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public boolean checkTree(TreeNode root) {
    	// 判断是否为空
        if (root == null) {
            return true;
        }
        int sum = 0;
        // 判断左子树节点是否为空
        if (root.left != null) {
            sum += root.left.val;
        }
        // 判断右子树节点是否为空
        if (root.right != null) {
            sum += root.right.val;
        }
        return root.val == sum;
    }
}

你可能感兴趣的:(LeetCode,leetcode,java,算法)