300万个整数,即12MB,可以参考下面贴子,用Hash排序。
http://topic.csdn.net/u/20081120/22/14e6c5aa-927f-41df-802d-cffb48110d09.html

解决方案 »

  1.   

    这个比较是相当大的。使用Hash,比较简单也容易理解的就是先按高16bit分成65536个分组,然后对剩下的16bit排序。如果内存允许,则可以先取高20bit,然后对低12bit进行排序。依此类推,这个高N-bit就当是散列值,如此选择一个比较好的散列值,可以很快的排好。
      

  2.   

    3,000,000 * 4字节(BYTES), 大概12MB, 一般的电脑都可以做了,没有很多。
    你可以尝试用数组(ARRAY) 或者用向量 vector<int> 来储存。或者其他的数据结构,stack, queque之类的。  
    也就是从文件中把数据读出来,然后一个各方在数组或向量里面。
      

  3.   

    就是最快的排序方法之一quick sort 也可以用数组来实现阿。数组只用来储存数据,跟算法无关。
      

  4.   

    多关键字基数排序MSD(MOST SIGNIFICANT DIGIT FIRST)
      

  5.   

    连接MSSQL,把数据写入数据库。用查询语句select * from xxx order by yyy排序。yyy要建立索引。------------------------------------
    Posted By EasyCsdn1.0