Redian新闻
>
external sorting的一个问题
avatar
external sorting的一个问题# JobHunting - 待字闺中
g*v
1
问题是在第5步,比如, 1G data, 100M memory,
1: divide into 10 parts.
2: sort 10 parts each in memory then write back to hard drive.
3: read 10M from each part (100M)
4: merge sort the 10 10M and write back the first 10M.
5: get 10M from one of the 100M parts in hard drive
问题是现在有10个100M被排序好了保存在硬盘上,然后每个100M取出10M在内存里面排序,然后把第1
个10M存在硬盘上,然后需要从那些100M里面取10M,问题是取10M的时候从哪个100M里面取?
谢谢
avatar
c*a
2
为什么必须要排序10M? 你可以持续merge排序直到10个10M中的某个已经取空了位置,
然后从相应的90M中再取10M,然后持续这个过程
avatar
g*v
3
对,问题是“然后从相应的90M中再取10M”,这个“相应的90M”是哪个相应,不知道
应该选哪个90M?

【在 c*******a 的大作中提到】
: 为什么必须要排序10M? 你可以持续merge排序直到10个10M中的某个已经取空了位置,
: 然后从相应的90M中再取10M,然后持续这个过程

avatar
g*v
4
是不是应该有个标准来去“从相应的90M中再取10M”
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。