ADD file via upload

master
pfka9ogtp 4 years ago
parent 7f8dbc4236
commit 950341c1b5

@ -0,0 +1,61 @@
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 300000000 //Ԫ<>ظ<EFBFBD><D8B8><EFBFBD>
#define M 100 //Ԫ<><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD>ӡ
void arr_print(int* arr)
{
int i;
for(i=0;i<N;i++)
{
printf("%3d",arr[i]);
}
printf("\n");
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD>ƴ<EFBFBD><C6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void sort_count(int* arr)
{
int i,j,k;
//ͳ<><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>и<EFBFBD>Ԫ<EFBFBD>س<EFBFBD><D8B3>ֵĴ<D6B5><C4B4><EFBFBD>
int count[M]={0};
for(i=0;i<N;i++)
{
//˫<><CBAB><EFBFBD>±<EFBFBD>֮<EFBFBD><D6AE><EFBFBD>Ԫ<EFBFBD><D4AA>ֵ++<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
count[arr[i]]++; //<2F>ɺϣ<C9BA><CFA3>±<EFBFBD>ֵ<EFBFBD><D6B5>Ԫ<EFBFBD><D4AA>ֵ<EFBFBD><D6B5>Ӧ
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
k=0; //<2F><><EFBFBD><EFBFBD>Ԫ<EFBFBD>ط<EFBFBD><D8B7><EFBFBD>λ<EFBFBD><CEBB>
for(i=0;i<M;i++) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD>ؽ<EFBFBD><D8BD><EFBFBD>
{
for(j=0;j<count[i];j++) //<2F>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
arr[k++]=i; //k++<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
}
}
int main()
{
int i;
int *arr=(int*)malloc(N*sizeof(int));
time_t start,end;
srand((unsigned int)time(NULL));
for(i=0;i<N;i++)
{
arr[i]=rand()%M;
}
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD>\n");
//arr_print(arr);
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
start=time(NULL);
sort_count(arr);
end=time(NULL);
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%d s\n", end-start);
//arr_print(arr);
system("pause");
return 0;
}
Loading…
Cancel
Save