값이 없는 이진 트리

2816 단어 javascriptleetcode
트리의 모든 노드가 동일한 값을 갖는 경우 이진 트리는 단일 값입니다.

이진 트리의 루트가 주어지면 주어진 트리가 단일 값이면 true를 반환하고 그렇지 않으면 false를 반환합니다.

예 1:

입력: 루트 = [1,1,1,1,1,null,1]
출력: 참

/**
 * Definition for a binary tree node.
 * function TreeNode(val, left, right) {
 *     this.val = (val===undefined ? 0 : val)
 *     this.left = (left===undefined ? null : left)
 *     this.right = (right===undefined ? null : right)
 * }
 */
/**
 * @param {TreeNode} root
 * @return {boolean}
 */
var isUnivalTree = function(root) {
const value = root.val;
  return checkIfUnivalued(root, value);
};

const checkIfUnivalued = (root, value) => {
  if (root === null) {
     return true;
  }

  if (root && root.val !== value) {
    return false;
  }

  return (
    checkIfUnivalued(root.left, value) && checkIfUnivalued(root.right, value)
  );
};

좋은 웹페이지 즐겨찾기