查找1亿个数里面最大的100个数。

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<vector>
#include<unistd.h>
#include<algorithm>
#include<iostream>

using namespace std;

int main()
{
    vector<int> a(100000000,0);

    srand((int)time(0));

    for(int i=0;i<100000000;i++)
    {
        a[i]=rand();
    }

    make_heap(a.begin(),a.end());

    for(int i=0;i<100;i++)
    {
        pop_heap(a.begin(),a.end());
        cout<<a.back()<<endl;
        a.pop_back();
    }


    return 0;
}

 

posted @ 2015-04-24 22:08  怎么样名字才不会重复  阅读(860)  评论(0编辑  收藏  举报