Univalued Binary Tree

LeetCode Q 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: Input: [1,1,1,1,1,null,1] ; Output: true
Example 2: Input: [2,2,2,5,2] ; Output: false

Note:

  • The number of nodes in the given tree will be in the range [1, 100].
  • Each node’s value will be an integer in the range [0, 99].

Solution: Recursion

Code:

public boolean isUnivalTree(TreeNode root) {
  if (root == null) return true;
  
  if ((root.left != null && root.left.val != root.val) || 
      (root.right != null && root.right.val != root.val))
    return false;
  
  return isUnivalTree(root.left) && isUnivalTree(root.right);
}

   Reprint policy


《Univalued Binary Tree》 by Tong Shi is licensed under a Creative Commons Attribution 4.0 International License
 Previous
Game of Life Game of Life
LeetCode Q 289 - Game of LifeAccording to the Wikipedia’s article: “The Game of Life, also known simply as Life, is a ce
2019-07-16 Tong Shi
Next 
Binary Tree Cameras Binary Tree Cameras
LeetCode Q 968 - Binary Tree CameraslGiven a binary tree, we install cameras on the nodes of the tree. Each camera at a
2019-07-16 Tong Shi
  TOC