由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 请教一个初级算法问题 (转载)
相关主题
嵌入式系统用什么sorting算法比较好?算法之极弱问
哪位大侠给说说 何时用 merge sort, 何时用 quick sort, 何时问一个严肃的实用问题
问一个leetcode的排序问题我也来一个, quick sort 只要一行。
underlying sort algorithm for SET in STL?两行quicksort,不难些吧
如何sort and merge n 个sorted linked list一个算法问题
一道MS面试题 (转载)为什么不能成功排序
新手学JAVA,遇到一个难题,有大侠愿意帮忙吗?请教一个python 问题
我写的quick sort[合集] 答案. 未排序的100个数字,如何最快地找出最大的5个
相关话题的讨论汇总
话题: 初级话题: 排序话题: 算法话题: 存盘话题: merge
进入Programming版参与讨论
1 (共1页)
J*******g
发帖数: 381
1
【 以下文字转载自 CS 讨论区 】
发信人: JiayiWang (noname), 信区: CS
标 题: 请教一个初级算法问题
发信站: BBS 未名空间站 (Fri Jun 26 17:30:35 2009, 美东)
要是有海量的数据要作排序, 但是内存空间有限。 譬如4G的内存,但是有4倍于内
存的数据要排序,请教一下用什么算
法比较好啊? 多谢!
e****d
发帖数: 333
2
我想到的比较直接的办法,不一定最好。
假设原始数据都随机。
先分成4段,分别quicksort排好存盘。
然后就对这4个文件用merge sort排。
内存一满就存盘,存盘是连续的存成一个文件就行了。
只是merge sort 的时候,对那4个文件的,要设好每次读进来的缓存大小。保险点就设
置小些,主要花读盘时间就行了。
J*******g
发帖数: 381
3
Thanks a lot!

【在 e****d 的大作中提到】
: 我想到的比较直接的办法,不一定最好。
: 假设原始数据都随机。
: 先分成4段,分别quicksort排好存盘。
: 然后就对这4个文件用merge sort排。
: 内存一满就存盘,存盘是连续的存成一个文件就行了。
: 只是merge sort 的时候,对那4个文件的,要设好每次读进来的缓存大小。保险点就设
: 置小些,主要花读盘时间就行了。

e****d
发帖数: 333
4
如果你按照我的方法写代码,要小心,在merge sort 的时候,每次写盘,缓存里一般
会有没排好序不能存盘的残留,小心处理。
e****d
发帖数: 333
5
也可以merge每次两个文件块。
lz可以看看外部排序的东东。
1 (共1页)
进入Programming版参与讨论
相关主题
[合集] 答案. 未排序的100个数字,如何最快地找出最大的5个如何sort and merge n 个sorted linked list
如何将若干已升序排序好的数组合并在一起,并仍然是升序?一道MS面试题 (转载)
又一个算法题新手学JAVA,遇到一个难题,有大侠愿意帮忙吗?
看看人家高手写的排序代码我写的quick sort
嵌入式系统用什么sorting算法比较好?算法之极弱问
哪位大侠给说说 何时用 merge sort, 何时用 quick sort, 何时问一个严肃的实用问题
问一个leetcode的排序问题我也来一个, quick sort 只要一行。
underlying sort algorithm for SET in STL?两行quicksort,不难些吧
相关话题的讨论汇总
话题: 初级话题: 排序话题: 算法话题: 存盘话题: merge