平衡二叉树的判定(1077)
来源:互联网 发布:淘宝开店充值怎么做 编辑:程序博客网 时间:2024/05/22 15:19
平衡二叉树(Balanced Binary Tree)具有以下性质:
它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。
这里我们可以一个节点一个节点的判断是否为平衡二叉树
求树的高度的代码如下
int high(node *t){if(t!=NULL){return high(t->lc)>high(t->rc)?high(t->lc)+1:high(t->rc)+1;}elsereturn 0;}
然后依次判断其他节点,这里用到了递归算法
bool balance(node *t){if(t==NULL)return 1;int lh = high(t->lc);int rh = high(t->rc);if(abs(lh-rh)>1)return 0;return balance(t->lc) && balance(t->rc);}
0 0
- 平衡二叉树的判定(1077)
- 平衡二叉树的判定
- 平衡二叉树判定
- 平衡二叉树判定
- LintCode93:平衡二叉树的判定
- 12.剑指offer-平衡二叉树的判定
- 剑指offer:判定平衡二叉树
- 求二叉树的深度,判定二叉树是否是平衡二叉树(java)
- (二叉树)求树的最小深度,平衡树的判定,判定树是否相同,判定对称树
- C++之平衡二叉树的判定(25)---《那些奇怪的算法》
- 平衡二叉树判定 AVL Balanced Binary Tree
- 面试经典(15)--判定是否是平衡二叉树
- leetcode Balanced Binary Tree 平衡二叉树判定
- 码农小汪剑指Offer之37-平衡二叉树判定
- 平衡二叉树的
- 完全二叉树的判定
- 完全二叉树的判定
- 完全二叉树的判定
- 第六周 嵌套的盒子的小bug
- nmap命令详解
- 给学生留的作业
- C语言scanf()和gets()及printf()和puts()的区别
- 基于proteus的51单片机仿真实例十四、51单片机的C语言文件包含应用实例
- 平衡二叉树的判定(1077)
- 基于proteus的51单片机仿真实例十五、51单片机的C语言条件编译应用实例
- 传纸条(一)
- 程序的机器级表示
- 内存优化的坑
- 基于proteus的51单片机仿真实例十六、51单片机的C语言的标识符和关键字
- RAM嵌入式项目实战开发
- maven聚合工程的创建和聚合工程的打包(分布式架构搭建)
- 升级chrome 58遇到的坑