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:
Input: [1,1,1,1,1,null,1] Output: true
Example 2:
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); } }