LeetCode——Balanced Binary Tree

832 단어 LeetCode
Given a binary tree, determine if it is height-balanced.
For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1.
중국어: 두 갈래 나무를 정해 고도의 균형을 측정한다.
이 문제에서 한 그루의 높이에서 균형이 잡힌 두 갈래 나무는 한 그루의 노드마다 두 개의 하위 나무의 깊이 차이가 1보다 크면 안 된다고 정의된다.
차례로 판단하다.
Java:
	public boolean isBalanced(TreeNode root) {
		if (root == null)
			return true;
		if (root.left == null && root.right == null)
			return true;
		if (Math.abs(depth(root.left) - depth(root.right)) > 1)
			return false;
		return isBalanced(root.left) && isBalanced(root.right);
	}

	public int depth(TreeNode root) {
		if (root == null)
			return 0;
		return 1 + Math.max(depth(root.left), depth(root.right));
	}

좋은 웹페이지 즐겨찾기