乔恩,宾利老爷子的神书,我在刷leedcode过程中突然发现,二分查找,二分搜索树之类的东西很牛逼-------使用太多了。于是好好学习,偶然看到编程珠玑,在书堆中找出了编程珠玑。看了一下深以为然!老爷子的水平实在是高,程序验证这门研究生的课,也被他单独列了出来,二分查找更是第一章列出。爱不释手,要深入研读这本书。开篇问题
:磁盘文件排序?
文件最多包含1千万条记录,没条记录都是7位的整数。
只有1MB可以用。
7位正整数每个整数出现一次
条件:1MB内存,充足磁盘空间,10秒最好。升序排列?
-------------------------------------
位图数据结构:
1000个数不重复可以对应1000个位,读入有的话变位为1,然后按位输出。
排序排序就好了。仅仅适用于正整数操作》《左右移位。
int bitmap=0;32-0的位图。
for【1-n】
bit【i】=0;
//初始化
for each i in the input file
bit【i】=1;
遍历输出。。。。
2O(N);===>有限定义域内的稠密集合。
算法总有适合的情景,何时用什么算法很重要。