06 2016 档案

摘要:在大数查找中会遇到一类问题,例如在100亿条数据中找出 最大的(最小的) 前1000个元素。以int型4Byte为例,有1*1010*4 B = 4*1010/(230) B = 37.25G。 直接读取到内存中显然不合适,那么就需要: 首先,读取前1000个元素,建立一个最小堆(最大堆); 其次, 阅读全文
posted @ 2016-06-28 22:34 Lunais 阅读(439) 评论(0) 推荐(0)
摘要:来自——百度百科 原型声明:char *strcpy(char* dest, const char *src); 头文件:#include <string.h> 和 #include <stdio.h> 功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间 说明:src 阅读全文
posted @ 2016-06-28 21:38 Lunais 阅读(349) 评论(0) 推荐(0)
摘要:按照C的约定,对于所有排序,数据都将在位置0处开始。 对于数字可使用“<”和“>”;对于字符串使用strcmp和strcpy。 排序法 平均时间 最差情形 稳定度 额外空间 备注 冒泡 O(n2) O(n2) 稳定 O(1) n小时较好 插入 O(n2) O(n2) 稳定 O(1) 大部分已排序时较 阅读全文
posted @ 2016-06-28 21:25 Lunais 阅读(270) 评论(0) 推荐(0)
摘要:原文链接:http://blog.csdn.net/hackbuteer1/article/details/7558868 注:转载过来,学习一下,大家可以去拜读一下原文。 首先:强调一个概念定义一个函数为虚函数,不代表函数为不被实现的函数。定义他为虚函数是为了允许用基类的指针来调用子类的这个函数。 阅读全文
posted @ 2016-06-26 17:39 Lunais 阅读(253) 评论(0) 推荐(0)
摘要:在打印机作业时一般采用队列的形式FIFO(fisrt in first out),但遇到一个1份的和一个100份的作业时,先打印1份的相对合理;另外,不同作业的优先级也不同,优先级高的应该先处理。 insert == Enqueue deleteMin == Dequeue 二叉堆(完全二叉树):除 阅读全文
posted @ 2016-06-14 16:57 Lunais 阅读(311) 评论(0) 推荐(0)
摘要:一、一个整数的因数个数 1、做法:将整数N分解为幂的形式相乘。N = am*bn,则因数个数为:(m+1)*(n+1)。 另外,从1开始写出可以整除的数,知道相邻两个数相乘为N为止,即可算出因子个数。 求10的因数个数。1,2,5.此时2*5=10.因子个数2n=2*2=4; 或者求N得1到sqrt 阅读全文
posted @ 2016-06-13 16:09 Lunais 阅读(3200) 评论(0) 推荐(0)
摘要:数据处理中数据匹配常用到Qmap和QHash。 QHash查找速度上显著于QMap QHash以任意的方式进行存储,而QMap则是以key顺序进行存储。 散列表的实现常叫做散列(hashing),以常数平均时间插入、删除、查找。 散列原理:当输入一个关键字后,根据散列函数将其散列到表中一个位置,当位 阅读全文
posted @ 2016-06-11 22:33 Lunais 阅读(383) 评论(0) 推荐(0)
摘要:一、二叉树 定义:每个节点都不能有多于两个的儿子的树。 二叉树节点声明: 应用: 中缀表达式——>后缀表达式(栈的应用)——>表达式树(栈的应用2) 栈的应用2:读取后缀表达式,操作数入栈,遇操作符后,指向栈里前两位元素t1和t2的指针出栈(t1先弹出,作为该操作符的右儿子),并将指向该操作符的指针 阅读全文
posted @ 2016-06-07 22:57 Lunais 阅读(1693) 评论(0) 推荐(0)