桶排就是通过一维数组来实现,是最简单最快的排序。(说了当没说 233)
比如说:给你五个数 5 3 5 2 8 ,写一个代码来实现排序 :2 3 5 5 8
代码如下:
#include<stdio.h>
int main()
{
int a[11];
for(int i=0;i<11;i++)
{
a[i]=0;
}
int t;
for(int i=0;i<5;i++)
{
scanf("%d",&t);
a[t]++;
}
for(int i=0;i<11;i++)
{
for(int j=1;j<=a[i];j++)
{
printf("%d ",i);
}
}
return 0;
}
那么 ,还是这五个数 ,要求排序的时候去掉重复的:2 3 5 8
代码:
#include<stdio.h>
int main()
{
int a[11];
for(int i=0;i<11;i++)
{
a[i]=0;
}
int t;
for(int i=0;i<5;i++)
{
scanf("%d",&t);
a[t]++;
}
for(int i=0;i<11;i++)
{
if(a[i]!=0)
{
printf("%d ",i);
}
}
return 0;
}
ps:自己理解的桶排。