回复 18楼 waterstar
#include<stdio.h>
int main(){
int num[10]={1,8,2,3,6,5,7,10,9,4},num1[10];
int tem[12]={0},i;
for( i=0; i<10; ++i ) tem[ num[i] ]++;
for( i=1; i<12; ++i ) tem[i]+=tem[i-1];
for( i=9; i>=0; --i ) num1[--tem[num[i]]]=num[i];
for( i=0; i<10; ++i ) printf("%d ",num1[i]);
printf("\n");
return 0;
}
基数排序如果数据很大时间复杂度就要O(n*m) 其中n是要排序个数字个数,m是要排序的数字中最大那个数字的位数