前言
下图是一个很经典的算法叫做折半查找法:
对于在每个阶段都是两种结果的情况时,比如开和关,0和1,真和假,对和错,正面和反面等等,都适合用树状结构来建模,而这种树其实是一种很特殊的树,叫做二叉树。
定义
二叉树时n个结点的有限集合,该集合或者为空集(空集成为空二叉树),或者由一个根节点和两棵互不相交的,分别称为根节点的左子树和右子树的二叉树组成。
特点
二叉树的特点:
一.每个结点最多有两棵子树
二.左子树和右子树是有顺序的,次序不能任意颠倒
三.即使树中只有一棵子树,也要区分它是左子树还是右子树。例如下图中,树1和树2是同一棵树,但它们却是不同的二叉树
分类
斜树
顾名思义,就是树是斜的。
定义:
“所有结点都只有左子树的二叉树叫做左斜树
所有结点都只有右子树的二叉树叫做右斜树&