判断是否为平衡二叉树

来源:互联网 发布:nginx sticky 编辑:程序博客网 时间:2024/05/21 18:34

输入一棵二叉树,判断该二叉树是否是平衡二叉树。

dfs,判断这棵树的左右子树的高度差是否大于1

public class Solution {    private boolean flag = true ;     public boolean IsBalanced_Solution(TreeNode root) {        flag = true ;         dfs(root) ;         return flag ;     }    private int dfs(TreeNode root){        if(root == null){            return 0 ;         }        if(!flag)return 0 ;         int left = dfs(root.left)+1 ;         int right = dfs(root.right)+1 ;         if(Math.abs(left-right)>1){            flag = false ;         }        return Math.max(left , right) ;      }}
0 0
原创粉丝点击