堆是什么?是一种特殊的完全二叉树,就像下面这棵树一样。
有没有发现这棵二叉树有一个特点,就是所有父结点都比子结点要小(注意:圆圈里面的数是值,圆圈上面的数是这个结点的编号,此规定仅适用于本节)。符合这样特点的完全二叉树我们称为最小堆。反之,如果所有父结点都比子结点要大,这样的完全二...
分类:
其他好文 时间:
2014-06-16 10:41:34
阅读次数:
335
http://poj.org/problem?id=3614题目大意:给你一些母牛,母牛有能容忍日光浴的最小和最大光照强度。每仅仅母牛能够涂一次SPF,SPF能够将母牛能够承受的光照强度固定在某个地方。如今给你母牛的最小和最大值和不同的spf的光照强度及其数量,求最多能够有多少母牛享受日光浴?思路:...
分类:
其他好文 时间:
2014-06-16 07:58:43
阅读次数:
161
堆排序(heapsort)是一种原地(in place)排序算法, 它的时间复杂度是O(nlgn). 堆数据结构不只是在堆排序中有用,它还可以构成一个有效的优先队列。堆数据结构是一种数组对象,它可以被视为一颗完全二叉树。如图: Aheap-size是放在A中堆的元素个数。根据数组节点的索引,我们.....
分类:
其他好文 时间:
2014-06-15 21:27:58
阅读次数:
239
本文出自:http://blog.csdn.net/svitter
题目12:计算机学院学生会的打印机(优先队列)
小明抱怨学生会的打印机不符合FIFO的原则,看到许多在他后面来打印的同学比他先打印出来。五分钟前,小明的文件就是下一个候选的,现在小明的文件又排到了后面。学生会的同学给小明解释说,学生会的打印机不是采用传统的队列方式,而是采用一种自己定义的优先队列方式:每个要打印的文件被赋予...
分类:
其他好文 时间:
2014-06-15 10:59:45
阅读次数:
324
堆是什么?是一种特殊的完全二叉树,就像下面这棵树一样。
有没有发现这棵二叉树有一个特点,就是所有父结点都比子结点要小(注意:圆圈里面的数是值,圆圈上面的数是这个结点的编号,此规定仅适用于本节)。符合这样特点的完全二叉树我们称为最小堆。反之,如果所有父结点都比子结点要大,这样的完全二叉树称为最大堆。那这一特性究竟有什么用呢?
假如有14个数分别是9...
分类:
其他好文 时间:
2014-06-15 08:03:16
阅读次数:
223
坦克大战
时间限制:1000 ms | 内存限制:65535 KB
难度:3
描述
Many of us had played the game "Battle city" in our childhood, and some people (like me) even often play it on computer now.
What we are dis...
分类:
其他好文 时间:
2014-06-14 14:30:01
阅读次数:
274
#include
#include
using namespace std;
struct Node{
int x, y;
friend bool operator b.x; //x最小的节点在队首
}
};
int main(){
priority_queue PQ;
Node temp = {2, 3};
PQ...
分类:
其他好文 时间:
2014-06-14 14:03:20
阅读次数:
355
Codeforces Zepto Code Rush 2014 Feed with Candy 贪心 题解
一开始想的很native,就是想简单贪心排一下序去搞。。。然后玩脱了。。。先是无脑WA8,后来好不容易过了就被适牛hack了。。。
正解是,每次选取所有可能的糖果中,质量最大的那个。
具体实现的时候可以用优先队列去维护。...
分类:
其他好文 时间:
2014-06-14 09:26:27
阅读次数:
257
堆(heap) 亦被称为:优先队列(priority
queue),是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组对象。在队列中,调度程序反复提取队列中第一个作业并运行,因而实际情况中某些时间较短的任务将等待很长时间才能结束,或者某些不短小,但具有重要性的作业,同样应当....
分类:
其他好文 时间:
2014-06-12 06:08:10
阅读次数:
465