数据结构之二叉树(BinaryTree)

  二叉树是一种很常见的数据结构,但要注意的是,二叉树并不是树的特殊情况,二叉树与树是两种不一样的数据结构

目录

   一、 二叉树的定义

  二、二叉树为何不是特殊的树

  三、二叉树的五种基本形态

  四、二叉树相关术语

  五、二叉树的主要性质(6个)

  六、二叉树的存储结构(2种)

  七、二叉树的遍历算法(4种)

  八、二叉树的基本应用:二叉排序树、平衡二叉树、赫夫曼树及赫夫曼编码

一、二叉树的定义

  如果你知道树的定义(有限个结点组成的具有层次关系的集合),那么就很好理解二叉树了。定义:二叉树是n(n≥0)个结点的有限集,二叉树是每个节点最多有两个子树的树结构,它由一个根结点及左子树和右子树组成。(这里的左子树和右子树也是二叉树)。

  值得注意的是,二叉树和“度至多为2的有序树”几乎一样,但,二叉树不是树的特殊情形。具体分析如下

二、二叉树为何不是特殊的树   1、二叉树与无序树不同

  二叉树的子树有左右之分,不能颠倒。无序树的子树无左右之分。

  2、二叉树与有序树也不同(关键)

  当有序树有两个子树时,确实可以看做一颗二叉树,但当只有一个子树时,就没有了左右之分,如图所示:

  

数据结构之二叉树(BinaryTree)

三、二叉树的五种基本状态

数据结构之二叉树(BinaryTree)

四、二叉树相关术语

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpsxds.html