什么是堆?
的有关信息介绍如下:堆通常是一个可以被看做一棵树的数组对象。堆总是满足下列性质:
1 堆中某个节点的值总是不大于或不小于其父节点的值;
2 堆总是一棵完全二叉树。
将根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆。常见的堆有二叉堆、斐波那契堆等。
堆的实现通过构造二叉堆(binary heap),实为二叉树的一种;由于其应用的普遍性,当不加限定时,均指该数据结构的这种实现。这种数据结构具有以下性质。任意节点小于档燃(或大于)它的所有后裔,最小元(或最大元)在堆的根上(堆序性)。
堆总是一棵完全树。即除了最底层,其他层的节点都被元素填满,且最底层尽可能地从左到右填入。
堆栈的基本特点:先纳蠢衫洞腔入后出,后入先出。除头尾节点之外。