数据结构与算法——有1亿个整数,找出最大的1000个,要求时间越短越好,空间占用越少越好

有1亿个整数,找出最大的1000个,要求时间越短越好,空间占用越少越好(迅雷笔试) 首先要明白1亿个整数占用多大的内存,按每一个整数4个字节来算,用400000000B,大约400000KB,大约400MB,可见不能直接将那么多的数据直接拷贝到内存进行排序算法。 思路: 一、读入前1000个整数,创建最小堆。O(1) 二、而后接着读入剩下的整数,将每一个读入的整数与该最小堆中的最小值进行比较(与堆
相关文章
相关标签/搜索