二叉树的基本概念
二叉树(Binary tree)是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。二叉树特点是每个结点最多只能有两棵子树,且有左右之分
来自百度词条
二叉树的基本形态:
1.空的二叉树:
其实就是指向空的指针
2.只有根节点的二叉树:
也就是一个指针指向一个节点,这个节点是根节点
3.只有左子树和右子树:
只有左子树和右子树(又称斜树,其实也就成了链表):如下图:
4.完全二叉树
这个怎么说,如果对每个结点按照层序编号,然后按照从上到下,从左到右依次编号,编号时不跳过空结点。二叉树可能有的结点只有一个孩子,不是最后一层也可能出现叶子结点,但是我们编号的时候不跳过,始终按照左孩子 -> 右孩子的顺序去编号,如果发现某个编号处位置空缺,这棵树就不是完全二叉树。举几个例子