Skip to content

Latest commit

 

History

History
17 lines (10 loc) · 705 Bytes

堆.md

File metadata and controls

17 lines (10 loc) · 705 Bytes

什么是堆?

​ 堆是计算机中一种特殊的数据结构,是最高效的优先级队列。堆通常可以被看做是一棵完全二叉树的数组对象。

堆的性质

​ 堆满足以下性质:

	+ 堆中某个结点的值总是不大于或不小于其父结点的值;
	+ 堆总是一棵完全二叉树。
	+ 堆可以用一个一维数组来表示,对于任意i位置的元素,它的左子结点在2i的位置,右子结点在2i+1的位置,根结点的下标从1开始。
	+ 它的父结点在i/2的位置。

根结点最大的堆称为最大堆,根结点最小的堆称为最小堆。

堆是非线性数据结构,相当于一维数组,有两个直接后继。