简单的桶排序

来源:互联网 发布:类似社交网络的电影 编辑:程序博客网 时间:2024/05/16 19:37

最近在看《啊哈!算法》,记录下笔记吧!

将5 3 5 2 8进行排序

#include<stdio.h>int main(){int a[11],t,i,j;for(i=0;i<12;i++){a[i]=0;}for(i=0;i<=4;i++){scanf("%d",&t);a[t]++;}for(i=10;i>0;i--){for(j=1;j<=a[i];j++){printf("%d",i);}}getchar();getchar();} 

输入n个0~1000的数并进行排序

#include<stdio.h>int main(){int book[1001],i,j,n,t;printf("Please input the numbers\n");scanf("%d",&n);for(i=0;i<=1001;i++){book[i]=0;}for(i=0;i<n;i++){scanf("%d",&t);book[t]++;}for(i=0;i<1001;i++){for(j=1;j<=book[i];j++){printf("%d",i);}}}

时间复杂度为O(M+N),M为桶的个数,N为输入的数的个数

0 0