Java輸入一棵二叉樹,判斷該二叉樹是否是平衡二叉樹
阿新 • • 發佈:2021-02-17
技術標籤:簡單小演算法
題目描述
輸入一棵二叉樹,判斷該二叉樹是否是平衡二叉樹。
在這裡,我們只需要考慮其平衡性,不需要考慮其是不是排序二叉樹
平衡二叉樹(Balanced Binary Tree),具有以下性質:它是一棵空樹或它的左右兩個子樹的高度差的絕對值不超過1,並且左右兩個子樹都是一棵平衡二叉樹。
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 true; } public int getHeight(TreeNode root){ if(root == null){ return 0; } return Math.max(getHeight(root.left),getHeight(root.right)) + 1; } }