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);
}
Tree:判断二叉树是否为平衡二叉树
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 题目:输入一棵二叉树的根结点,判断该树是不是平衡二叉树。如果某二叉树中任意结点的左右子树的深度相差不超过1,那么它...