sam*_*rth 2 java memory sorting performance ram
想要输出1亿个整数,我的系统只有1 GB的RAM.什么是最快速有效的排序方式?
假设我们在文本文件中输入每行一个整数.
我们正在使用java程序进行排序.
我已经指定了RAM,因为我们无法保存RAM中的所有输入整数.
更新:整数是7位数字.
整数是7位数字.
因此,只有1000万个可能的值.
你有1GB的RAM.创建一个计数器数组,每个可能的值一个.
通读文件一次,计算计数器.
完成后,根据最终计数器值输出数字.
每个号码最多可以出现10亿次.所以32位计数器就足够了.这意味着10M x 4字节= 40M字节数组.