二叉树常被用于实现二叉查找树和二叉堆。
在计算机科学中,二叉树是每个结点最多有两个子树的树结构。通常子树被称作“左子树”和“右子树”。
根据不同的用途可分为:
1、完全二叉树——若设二叉树的高度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第h层有叶子结点,并且叶子结点都是从左到右依次排布,这就是完全二叉树。
2、满二叉树——除了叶结点外每一个结点都有左右子叶且叶子结点都处在最底层的二叉树。
3、平衡二叉树——平衡二叉树又被称为AVL树(区别于AVL算法),它是一棵二叉排序树,且具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。
扩展资料
深度为h的二叉树最多有个结点(h>=1),最少有h个结点。对于任意一棵二叉树,如果其叶结点数为N0,而度数为2的结点总数为N2,则N0=N2+1。
有N个结点的完全二叉树各结点如果用顺序方式存储,则结点之间有如下关系为若I为结点编号则 如果I>1,则其父结点的编号为I/2。如果2*I<=N,则其左孩子(即左子树的根结点)的编号为2*I。若2*I>N,则无左孩子。如果2*I+1<=N,则其右孩子的结点编号为2*I+1。
参考资料来源:百度百科-二叉树
二叉树没怎么用过,只是学习时候入门用的数据结构.现在用的基本上都是多于二个叉的树.比如显示一个树结构.在一个树里找指定的结点.写游戏的时候,我把场景放到节点上,这样出了一个场景,就切到父节点的场景.这个叫做'入口'技术,通过变换节点在树中的位置,打开同一个门,就可以到不同的地方.
泛泛的二叉树没怎么用,不过排序二叉树倒是不错,提高查找速度.我在游戏里面用了,很有效果哦:)
一种数据结构,用于保存和处理树状的数据,如家谱
应用极为广泛,因为根据数据结构的理论,任何复杂的树够可以转换为二叉中并进行处理
二叉树再排序、查找、大规模数据索引方面有很多很多应用
二叉树排序是简单算法排序中速度最快的
简单来说,二叉树是一种获得最佳答案的算法,在实际项目中,用在决策分析的场合比较多
二叉树是一种数据结构,软件工程中会有许多这样的数据结构,很有用