二叉树特殊类型
前端精髓
共 620字,需浏览 2分钟
·
2021-07-01 02:55
二叉树(Binary tree)是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。二叉树特点是每个结点最多只能有两棵子树,且有左右之分。
二叉树是 n 个有限元素的集合,该集合或者为空、或者由一个称为根(root)的元素及两个不相交的、被分别称为左子树和右子树的二叉树组成,是有序树。当集合为空时,称该二叉树为空二叉树。在二叉树中,一个元素也称作一个结点。
二叉树的类型
全二叉树
在这种类型的树中,除了叶子之外的所有节点都有两个孩子。
完美二叉树
所有内部节点都有两个孩子,所有叶子都在同一级别。
退化二叉树
在这种树中,所有节点都只有一个子节点。
完全二叉树
就像一棵完整的二叉树,所有的层次都被填满,但所有的叶子都应该向左倾斜。
平衡二叉树
左右子树高度差的绝对值小于等于1。
| height(left_sub_tree) - height(right_sub_tree) | <= 1
偏斜二叉树
所有节点只有一个孩子,除了最后一个(叶子)没有孩子。分为左偏二叉树和右偏二叉树两种。
评论