定义:
简化版桶排序是指对0~n范围进行排序时,需要定义n个桶,每个桶对应一种元素或一个范围内的元素,再进行元素个数的存储,因为实质上存储的是元素个数,所以无须进行元素的比较替换,时间复杂度是O(N)
概念图
源代码如下,揣摩不同的 "i "代表着什么
/**********************************************************************
实现简单的桶排序存五个人的信息
输入: 5 3 5 2 8
输出: 8 5 5 3 2
**********************************************************************/
#include<stdio.h>
int main()
{
int a[11];
int i,j;
int num;
//初始化
for(i=0;i<11;i++)
{
a[i]=0;
}
//输入
for(i=0;i<5;i++)
{
scanf("%d",&num);
a[num]++;
}
//输出
for(i=10;i>0;i--)
{
if(a[i]!=0)
{
for(j=0;j<a[i];j++)
{
printf("%3d",i);
}
}
}
printf("\n");
system("pause");
return 0;
}
本题图解: