C语言实现5G文本文件排序问题

dolby_xiong 2012-07-11 11:46:23
一个5G的文本文件,被分割成若干个小文件作为输入,如何只使用C语言,以行为单位,尽可能快速的按照字典序排序输出至另一个文件,1.5G内存,硬盘不受限。
...全文
204 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
dolby_xiong 2012-07-11
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]
可以考虑使用内存映射。

如果楼主经常需要做类似的排序,那么用云计算吧(比如Hadoop),这种数量级的排序,绝对可秒杀之。
[/Quote]

这个是个小练习题,不让用那么高端的。
pathuang68 2012-07-11
  • 打赏
  • 举报
回复
可以考虑使用内存映射。

如果楼主经常需要做类似的排序,那么用云计算吧(比如Hadoop),这种数量级的排序,绝对可秒杀之。
dolby_xiong 2012-07-11
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
用数据库
[/Quote]

要求必须是C,连c++都不允许使用。
dolby_xiong 2012-07-11
  • 打赏
  • 举报
回复
要求必须是C,连c++都不允许使用。
赵4老师 2012-07-11
  • 打赏
  • 举报
回复
用数据库
dolby_xiong 2012-07-11
  • 打赏
  • 举报
回复
我先对每一个单独的文件,每一个大概1G使用快排并分别写到硬盘,之后再用堆排来合并已排序的文件。可是,悲剧,速度远远达不到要求。
dolby_xiong 2012-07-11
  • 打赏
  • 举报
回复
自己先顶一下

69,377

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧