二叉树由一个根结点或两棵互不相交的、分别称为左子树和右子树的子二叉树构成。node
二叉树中,若叶子结点数为 n0,度为 2 的结点数为 n2,则有 n0=n2+1。算法
满二叉树:一棵深度为 k 的满二叉树(full binary tree)是具备 2k -1 (k≥0)个结点的二叉树。满二叉树每一层的结点数目都达到最大值.数组
彻底二叉树:一棵具备 n 个结点深度为 k 的二叉树,若是它的每个结点都与深度为 k 的满二叉树中编
号为 1~n 的结点一一对应,则称这棵二叉树为彻底二叉树(complete binary tree)数据结构
二叉树的存储结构有两种:顺序存储结构和链式存储结构。blog
二叉树的顺序存储结构适用于彻底二叉树,对彻底二叉树进行顺序编号,将编号为 i 的结
点存放在数组下标为 i-1 的位置上.二叉树
通常状况下,采用链式存储结构来存储二叉树。每一个结点有 3 个域:终端
访问根结点,遍历左子树,遍历右子树。表达式的前缀表示(波兰式)遍历
遍历左子树,访问根结点,遍历右子树。表达式的中缀表示im
遍历左子树,遍历右子树,访问根结点。表达式的后缀表示(逆波兰式)d3
参考图书: 《算法与数据结构》