/*
数据结构与算法学习:堆 + 图
*/
堆: 一种特殊的树,必须满足的条件:
- 堆是一个完全二叉树;
- 堆中每一个节点的值都必须大于等于(或小于等于)其子树中每个节点的值。
大顶堆: 每个节点的值都大于等于子树中每个节点值的堆
小顶堆: 对于每个节点的值都小于等于子树中每个节点值的堆。
第 1 个和第 2 个是大顶堆,第 3 个是小顶堆,第 4 个不是堆。
堆的应用:
- 优先级队列;
合并有序小文件;
高性能定时器; - 利用堆求TOP K;
- 利用堆求中位数。
图: 非线性表数据结构,在有向图中,我们把度分为入度(In-degree)和出度(Out-degree)。
顶点的入度: 表示有多少条边指向这个顶点;
<