劍指offer(四十七)之平衡二叉樹
阿新 • • 發佈:2019-02-09
題目描述
輸入一棵二叉樹,判斷該二叉樹是否是平衡二叉樹。
程式碼:
public class Solution { public boolean IsBalanced_Solution(TreeNode root) { if (root == null) return true; if (Math.abs(getHeight(root.left) - getHeight(root.right)) > 1) return false; return IsBalanced_Solution(root.left) && IsBalanced_Solution(root.right); } public int getHeight(TreeNode root) { if (root == null) return 0; return max(getHeight(root.left), getHeight(root.right)) + 1; } private int max(int a, int b) { return (a > b) ? a : b; } }