• C++
  • 备战CSP-J初赛21天打卡计划。DAY8-二叉树的形态与遍历-1

  • @ 2024-9-4 14:22:26

二叉树

每个结点最多有两个孩子的树,左边的叫作左孩子,右边的叫作右孩子,或者说,每个结点最多有两棵子树的树。

满二叉树(也叫完美二叉树,perfect binary tree)

在一棵二叉树中,如果所有分支结点都存在左子树和右子树,并且所有叶子结点都在同一层上,这样的一棵二叉树称之为满二叉树。

性质

  • 叶子只能出现在最下一层;
  • 非叶子结点一定有两个孩子;
  • 在同样深度的二叉树中,满二叉树的结点个数最多,叶子最多。

完全二叉树(complete binary tree)

对一棵树中的结点按从上至下、从左至右的顺序进行编号,如果每个节点的编号都与该位置在满二叉树中的编号相同,则称该树为完全二叉树。

性质

  • 叶子结点只能出现在最下两层;
  • 最下层若有叶子结点,一定集中在左侧;
  • 倒数第二层若有叶子结点,一定集中在右侧;
  • 如果结点只有1个孩子,则该孩子为左孩子;
  • 同样结点数的二叉树,完全二叉树的深度最小。

完整二叉树(full/proper binary tree)

完整二叉树

每个结点的子结点数量均为 0 或者 2 的二叉树。换言之,每个结点或者是树叶,或者左右子树均非空。

0 条评论

目前还没有评论...