码迷,mamicode.com
首页 >  
搜索关键字:堆    ( 25490个结果
基于堆的最大最小优先级队列的实现
最大堆能够在O(1)的时间内取得集合中的最大值,并且在集合中加入新元素的时候,能够以O(Logn)的时间将新的元素插入到堆中。当取出最大的元素时,能够以O(Logn)的时间重新将堆整理成最大堆。最小堆同理。最大优先级队列的应用实例:基于优先级的作业调度,在所有等待调度的作业中,选择具有最大优先级作业...
分类:其他好文   时间:2014-05-01 09:21:41    阅读次数:386
2014 UESTC Training for Data Structures E - 休生伤杜景死惊开
E - 休生伤杜景死惊开Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others)SubmitStatus陆伯言军陷八卦阵之中,分明只是一条直路,却怎的也走不到尽头。阵中尽是石堆,以某一石堆为参考,....
分类:其他好文   时间:2014-05-01 09:09:18    阅读次数:380
Java内存的原型及工作原理理解
一、java虚拟机内存原型寄存器:我们在程序中无法控制。栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中堆:存放用new产生的数据静态域:存放在对象中用static定义的静态成员常量池:存放常量非RAM存储:硬盘等永久存储空间。二、常量池(constant pool) 常....
分类:编程语言   时间:2014-05-01 06:54:37    阅读次数:390
堆排序
package algorithm.sort;public class HeapSort { public static void main(String[] args) { int[] a = new int[] {5, 3, 7, 2, 1, 4, 9, 8, 6, 1}; sort(a); p...
分类:其他好文   时间:2014-05-01 03:24:04    阅读次数:332
随机函数Surprising
之前写了个用来抽取1-54号的随机函数,发现30-40出现的情况很大,就在果壳上提问了一下//听取了某个大神的建议循环了10000次之后惊喜的发现这样写出现了一大堆相同的数字!之后有个很神大牛解答了一下//这里mark一下【感谢....】【简直长知识了...原来随机函数如此神】
分类:其他好文   时间:2014-05-01 03:12:51    阅读次数:249
HDU 1171 Big Event in HDU (母函数)
题意:有n样物品,每样物品价值是v,件数是m。尽量把这些物品分成两堆使得两边总价值最接近。输出分得的两堆各自的价值。 利用母函数法来解决,因为分成两堆,而两堆中较小的一堆最大为所有物品总价值量的一半,所以母函数的组合数上下就可以设置成总价值量的一半。求出所有的组合后,可以利用贪心的思想来得到答案,因为要求两堆之差尽可能小,所以就可以从总价值量的一半开始向小的方向找,找到最大的价值量,则另一堆的价值量就是总价值量-此堆的价值量。因为组合数可能较大,这里不记录组合种数,而是用一个标记来表示该数能否组合出即可。...
分类:其他好文   时间:2014-04-29 13:42:20    阅读次数:302
《Thinking in Algorithm》16.堆结构之斐波那契堆
前面的博客中我们讲到的堆的两种变体,二叉堆和二项堆,今天我们要讲的就是著名的斐波那契堆。二项堆和斐波那契堆对于search操作的支持均比较低效;可能花费一段时间才能找到关键字。为此,涉及给定元素的操作(如DECREASE-KEY和DELETE)均需要一个指针指向这个元素,并且指针作为输入的一部分。...
分类:其他好文   时间:2014-04-29 13:36:20    阅读次数:331
排序算法(二)
在上一篇排序算法的文章中介绍了插入排序,分别为直接插入排序和希尔排序。今天我们继续来介绍其他的排序算法。 1、选择排序:简单选择排序 2、选择排序:堆排序...
分类:其他好文   时间:2014-04-29 13:36:20    阅读次数:340
上位机简单串口类,VC串口类
我是在一家做硬件的的公司里面做软件开发工程师的,我做的软件大多是是编写软件通过串口去控制硬件,所以串口编程对于我来说是很重要的。串口编程之前一直使用的是自己写的简单串口(只有发送,没有接收)类,或者上网下的CSerialPort类(个人觉得不好用啊,互锁变量一堆,代码一开始还让人看不懂,对于上位机使用不合适)。对于我做的上位机软件,其实使用串口只是需要顺序发送,接收数据无误就行了,不需要考虑太多东...
分类:其他好文   时间:2014-04-29 13:24:20    阅读次数:418
看书小记3(《C专家编程》)
gets()不检查缓冲区空间,多出来的字符会覆盖堆栈原先的内容。 fgets()的第二个参数说明最大读入的字符数。如果这个参数值为n,那么fgets()就会读取最多n-1个字符或读完一个换行符为止。两个条件满足任意一个结束。 fgets()读取到换行符,就会把它存到字符串里,而不是想gets()那样丢弃它。 fgets()的第三个参数说明读哪个文件。从键盘上读数据时,可以使用stdin(代表...
分类:其他好文   时间:2014-04-29 13:17:22    阅读次数:337
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!