计数排序
1 //一直待排序列的范围是0~bound-1,所以辅助数组C的大小为bound;时间复杂度O(n) 2 int* countSort(int A[],int n,int bound){ 3 int* B=new int[n]; 4 int* C=new int[bound]; 5 for(int i=0;i<bound;i++) 6 C[i]=0; 7 for(int i=0;i<n;i++) 8 C[A[i]]=C[A[i]]+1; 9 for(int i=1;i<bound;i++) 10 C[i]=C[i-1]+C[i]; 11 for(int i=0;i<n;i++){ 12 C[A[i]]--; 13 B[C[A[i]]]=A[i]; 14 } 15 return B; 16 }