二叉树
定义:每个节点最多有两个叉,也就是两个子节点,别离是 左子节点 和右子节点。不过二叉树不要求每个节点都有两个子二节点,有的节点只有左节点,有的节点只有右子节点。
满二叉树
定义:叶子节点全副都在最底层,除了 叶子节点之外,每个节点都有左右两个子节点 ,这种二叉树就叫做 满二叉树
齐全二叉树
定义:叶子节点都在最低下两层,最初一层的叶子节点都靠左排列,并且除了最初一层,其余层的节点个数都要达到最大。
如何存储一个二叉树
两种办法:一种是基于 指针或者援用 的二叉 链式 存储法,一种是基于 数组的顺序存储法。
链式存储法
每个节点有三个字段,一个字段存储数据 ,左右节点别离存储下一个 节点的指针 ,只有找到了 根节点,就能够通过左右子节点的指针,吧整棵树串联起来。
顺序存储法
咱们把根节点存储在下标 i = 1 的地位,那左子结点存储在下标为 2 i 的地位,下标为 2i + 1 的存储就是右子节点。反过来,下标为 i/ 2 的地位存储就是它的父节点