二叉树
定义:每个节点最多有两个叉,也就是两个子节点,分别是左子节点和右子节点。不过二叉树不要求每个节点都有两个子二节点,有的节点只有左节点,有的节点只有右子节点。
满二叉树
定义:叶子节点全部都在最底层,除了叶子节点之外,每个节点都有左右两个子节点,这种二叉树就叫做满二叉树
完全二叉树
定义:叶子节点都在最低下两层,最后一层的叶子节点都靠左排列,并且除了最后一层,其他层的节点个数都要达到最大。
如何存储一个二叉树
两种方法:一种是基于指针或者引用的二叉链式存储法,一种是基于数组的顺序存储法。
链式存储法
每个节点有三个字段, 一个字段存储数据,左右节点分别存储下一个节点的指针,只要找到了根节点,就可以通过左右子节点的指针,吧整棵树串联起来。
顺序存储法
我们把根节点存储在下标i=1的位置,那左子结点存储在下标为 2i的位置,下标为 2i + 1的存储就是右子节点。反过来,下标为 i/2的位置存储就是它的父节点
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。