题目:
张三是一位短跑教练,张三想用最快最简单的排序算法把今天10位参加测试的名次排出来假设每位运动员跑出来的成绩都是正整数你能帮张三写一个c++的程序让运动员快点知道名次吗?
输入:
十个需要排序的正整数。
输出:
十个排好序的正整数。
输入样例:
1 9 7 5 3 2 4 8 6 12
输出样例:
1 2 3 4 5 6 7 8 9 12
提示:
桶排序(因为桶排序速度快且非常简单)
源代码:
#include <bits/stdc++.h>//万能头文件
using namespace std;
int main()//主函数
{
//1.根据数字范围确定数组大小并赋值
int x[10001]={0};//把一维数组初始化让他从0开始
int a;
//2.数据放入对应的桶数组,并统计
for(int i=1;i<=10;i++)
{
cin>>a;//让用户从键盘输入10个数;
x[a]++;
}
//3.遍历桶数组,并输出数组的下标
for(int i=1;i<=10001;i++)
{
for(int j=1;j<=x[i];j++)
{
cout <<i<<" ";
}
}
return 0;
}
桶排序&