1.二叉堆的概念
二叉堆是一种特殊的完全二叉树,分为最小二叉堆和最大二叉堆。可以用来构建优先队列。
最小二叉堆:所有父节点都小于等于子节点的完全二叉树;
最大二叉堆:所有父节点都大于等于子节点的完全二叉树。
2.二叉堆的操作
2.1添加节点
新的节点将被作为完全二叉树的最后一个节点进行添加。然后再进行上浮操作。
2.2删除节点
删除根节点,然后将最后一个节点作为根节点。进行下潜操作。
2.3将一个任意的完全二叉树重整成二叉堆
从最后一个非叶子节点开始,直到根节点,依次进行下潜操作。