Pagini recente » Cod sursa (job #827381) | Cod sursa (job #596195) | Cod sursa (job #1941652) | Cod sursa (job #1950133) | Cod sursa (job #2863924)
#include <iostream>
#include <fstream>
#include <chrono>
using namespace std;
using namespace std::chrono;
ifstream f("count_sort.in");
ofstream g("count_sort.out");
int fr[100000000],v[100000000],maxi,mini,k,r;
int Count_Sort()
{ f>>k;
fr[k]++;
maxi=mini=k;
while(f>>k)
{ fr[k]++;
if(mini>k)
mini=k;
if(maxi<k)
maxi=k;
}
k=0;
auto start = high_resolution_clock::now();
for(int i=mini;i<=maxi;i++)
while(fr[i]!=0)
{ g<<i<<' ';
v[k]=i;
k++;
fr[i]--;
r++;
if(r==19)
{ r=0;
g<<'\n';
}
}
k--;
auto stop = high_resolution_clock::now();
auto duration = duration_cast<microseconds>(stop - start);
cout << "Count Sort a durat "<<duration.count()<<" microsecunde" << endl;
return k;
}
int main()
{ k = Count_Sort();
return 0;
}