11 2012 档案
摘要:问题: 假设一个文件中有9 亿条不重复的9 位整数,现在要求对这个文件进行排序。 一般解题思路: 1 、将数据导入到内存中 2 、将数据进行排序 (比如插入排序、快速排序) 3 、将排序好的数据存入文件 难题: 一个整数为4 个字节 即使使用数组也需要900,000,000 * 4byte = 3.4G 内存 对于32 位系统,访问2G 以上的内存非常困难,而且一般设备也没有这么多的物理内存 将数据完全导入到内存中的做法不现实 其他解决办法: 1 、导入数据库运算 2 、分段排序运算 3 、使用bit 位运算 解决方案一: 数据库排序 将文本文件导入到数据库,让数据库进行索引排序操作后提取数据
阅读全文