基础概念

定义:一种特殊的二叉树,所有层都尽可能填满,最后一层从左到右填充

例子:  想象一个满杯的杯子,杯子里的水就是二叉树的节点,每一层都是满的,最后一层从左到右排列

特点:

  • 所有层都尽可能填满: 除最后一层外,所有层中的节点都尽可能填满
  • 最后一层从左到右填充: 最后一层的节点从左到右尽可能地填充
  • 每个节点最多有两个子节点:

基本操作

  • 插入 (Insert): 在完全二叉树中插入新节点需要找到合适的位置,并更新指针关系,保证完全二叉树的性质
  • 删除 (Delete): 从完全二叉树中删除节点需要找到该节点,并更新指针关系,保证完全二叉树的性质
  • 查找 (Search): 在完全二叉树中查找特定节点需要从根节点开始,依次向下比较节点数据,直到找到目标节点

应用场景

  • 堆排序: 是一种完全二叉树,用于实现高效的排序算法
  • 哈夫曼编码: 用于数据压缩的算法