排序算法(一)桶排法
--转自啊哈磊
问题:
随机输入五个0-10之间的数,对输入的数由小到大排列
方法:桶排法:用一个大小为11的一维数组,数组下标0~10分别表示分数0~10,不同的分数所对应单元格则存储得此分数的人数
代码:
1 #include2 3 int main(void) 4 { 5 int book[11]; 6 int tmp; 7 for (int i = 0; i <=10; i++) 8 book[i] = 0;//初始化为0 9 for (int i = 0; i < 5; i++)//循环读入5个数10 {11 scanf_s("%d", &tmp);//把每一个数读到变量t中12 book[tmp]++;//进行计数13 }14 15 for (int i = 0; i<=10;i++)//依次判断a[0]~a[10]16 for (int j = 0; j
如果要实现从大到小排序,只需要将for(int i=0;i<=10;i++)改为for(int i=10;i>=0;i--)即可。