1-1 C实现桶排序,如果对数据范围在0~100的整数进行排序,则需要101个桶
#include<stdio.h>
int main()
{
int n,i,j,t;
int book[101]={0};
scanf("%d",&n); //输入一个数n,表示接下来有n个数
for(i=1;i<=n;i++)
{
scanf("%d",&t);
book[t]++; //循环输入n个数,并进行桶排序
}
for(i=0;i<=100;i++) //依次判断编号0到100的桶,从小到大排序,
for(j=1;j<=book[i];j++)
printf("%d ", i);
return 0;
}
python实现桶排序
def bucket_sort(lst):
book_lst=[0]*101
result=[]
for i in lst:
book_lst[i]+=1
for index in range(len(book_lst)):
while book_lst[index]>0:
result.append(index)
book_lst[index]-=1
return result
if __name__=='__main__':
eles=input('intput elements:').strip().split() #输入只能相隔一个空格,
#也可以不用strip()
list = [int(ele) for ele in eles] #把输入的值转换成整型给list
list=bucket_sort(list)
print(list)