算法基础知识之树、二叉树

一、树

把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。在计算机科学中,英语:tree)是一种抽象数据类型(ADT)或是实作这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。树一般分为两类:

  • 无序树:树中任意节点的子节点之间没有顺序关系,这种树称为无序树,也称为自由树
  • 有序树:树中任意节点的子节点之间有顺序关系,这种树称为有序树;

二、二叉树

计算机科学中,二叉树英语:Binary tree)是每个节点最多只有两个分支(不存在分支度大于2的节点)的树结构。通常分支被称作“左子树”和“右子树”。二叉树的分支具有左右次序,不能颠倒。

二叉树的第i层至多拥有2^{i-1}}个节点数:  2^0   2 ^1   2^2 ........

深度为k的二叉树至多总共有个节点数: 1 + 2 + 4 + .... + 2^k = 

三、满二叉树

二叉树满满当当的,称为满二叉树

 四、完全二叉树

  完全二叉树                  满二叉树

除了最后一层,都长满了。而且是最后一层的右方存在空缺。叫做完全二叉树

原文地址:https://www.cnblogs.com/nulige/p/6897659.html