965. Univalued Binary Tree 整个一样的二叉树

A binary tree is univalued if every node in the tree has the same value.

Return true if and only if the given tree is univalued.

 

Example 1:

965. Univalued Binary Tree 整个一样的二叉树

Input: [1,1,1,1,1,null,1]
Output: true

Example 2:

965. Univalued Binary Tree 整个一样的二叉树
Input: [2,2,2,5,2]
Output: false

 

反正就是尽量用traverse。少用bst的模板(哪怕是bst),因为没人用

 

class Solution {
    int val = -1;
    public boolean isUnivalTree(TreeNode root) {
        if (root == null) return true;
        if (val < 0) val = root.val;
        return root.val == val && isUnivalTree(root.left)  && isUnivalTree(root.right);
    }
}

 

 

 
上一篇:堆(Heap)的详解和二叉堆(Binary Heap)的代码实现


下一篇:第四章内容总结