我有一个5gig文本文件,需要按字母顺序进行排序。最佳算法是什么?
约束:
速度-尽可能快
内存-具有运行Windows XP的1 Gig Ram的PC
我通常使用sortlinux命令对> 2GB的文本文件进行排序。通常需要15-30秒,具体取决于服务器负载。
sort
只要做到这一点,就不需要您想的那么长。
更新 由于您使用的是Windows XP,因此可以在UnxUtils中获得sort命令。我可能会比Linux版本更多地使用它,并且它的速度同样快。
巨大文件的瓶颈实际上是磁盘速度..我上面的服务器有一个快速的sata突袭。如果您的计算机是台式机(或笔记本电脑),则您的7200 RPM(或5400)RPM IDE驱动器将增加几分钟的时间。