Tree:判断二叉树是否为平衡二叉树

public static boolean test5(BinTreeNode node) {
        boolean[] res = {true};
        getHeight(node, 1, res);
        
        return res[0];
    }
    
    public static int getHeight(BinTreeNode node,int level,boolean[] res) {
        if (node==null) {
            return level;
        }
        int lh = getHeight(node.left, level+1, res);
        if (!res[0]) {
            return level;
        }
        int rh = getHeight(node.right, level+1, res);
        if (!res[0]) {
            return level;
        }
        if (Math.abs(lh-rh)>1) {
            res[0]=false;
        }
        return Math.max(lh, rh);
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容