二叉树中完全二叉树、满二叉树、二叉排序树、平衡二叉树的区别和联系
2016-07-18 10:33
337 查看
1,完全二叉树:
只有最下面的两层结点度小于2,并且最下面一层的结点都集中在该层最左边的若干位置。
2,满二叉树:
是一颗完全二叉树;
除了叶结点外每一个结点都有左右子叶且叶结点都处在最底层。深度为k,且有2的(k)次方-1个节点。
3,堆:
是一颗完全二叉树;
大根堆:左右子树的结点值都小于根结点值,左右子树都是大根堆。
小根堆:左右子树的结点值都大于根结点值,左右子树都是小根堆。
4,二叉排序树(二叉查找树):
左子树上的值都小于根结点的值,右子树上的值都大于根结点得值,左右子树都是二叉排序树。
5,平衡二叉树(ALV):
是一颗二叉排序树;
左子树和右子树的差值不超过1,左右子树都为平衡二叉树。
常用算法有红黑树、AVL、Treap
只有最下面的两层结点度小于2,并且最下面一层的结点都集中在该层最左边的若干位置。
2,满二叉树:
是一颗完全二叉树;
除了叶结点外每一个结点都有左右子叶且叶结点都处在最底层。深度为k,且有2的(k)次方-1个节点。
3,堆:
是一颗完全二叉树;
大根堆:左右子树的结点值都小于根结点值,左右子树都是大根堆。
小根堆:左右子树的结点值都大于根结点值,左右子树都是小根堆。
4,二叉排序树(二叉查找树):
左子树上的值都小于根结点的值,右子树上的值都大于根结点得值,左右子树都是二叉排序树。
5,平衡二叉树(ALV):
是一颗二叉排序树;
左子树和右子树的差值不超过1,左右子树都为平衡二叉树。
常用算法有红黑树、AVL、Treap
相关文章推荐
- 为ubuntu添加多媒体以及flash等等常用包
- python脚本实现自动登陆校园网
- @autowired和@Resource
- VC如何让窗口半透明
- DFS生成n个数的排列数
- System.InvalidOperationException
- 魔都 3 年,从程序员到 CTO
- CSS 多类选择器
- 阿里云服务器mysql数据库修改密码
- 利用颜色和形态学两种方法进行车牌区域提取的OpenCV代码
- HDU 1106
- 安卓学习笔记---使用AndroidStudio出现的问题错误(错误: -source 1.6 中不支持 diamond 运算符 (请使用 -source 7 或更高版本以启用 diamond 运算)
- rand、srand生成随机数
- caffe源码阅读2-syncedmem.hpp+.cpp
- android添加ssh(openssh)
- 有向图的强连通性
- 有向图的强连通性
- C语言里的延时函数
- 将Android手机屏幕快速投影至WIN7的PC和投影仪
- 欢迎使用CSDN-markdown编辑器