import java.util.Scanner;
public class 桶排序 {
/**
* 利用数组来装载输入的数字,有几个重复的就对应数值,进行升序或降序排列
*/
public static void main(String[] args) {
// 假设数值范围0-1000
int[] book=new int[1001]; // 定义整形数组保存输入的数字
int num, inNum; // num为输入的数字个数,inNum输入的数值
// 赋初值
//for (int i = 0; i < book.length; i++) {
// book[i]=0;
//}
Scanner scanner=new Scanner(System.in);
num=scanner.nextInt(); // 保存输入数字个数的值
for (int i = 1; i <= num; i++) {
inNum=scanner.nextInt();
book[inNum]++; // 相对应的数组保存值
}
// 输出结果 升序排列
for (int i = 0; i < book.length; i++) {
for (int j = 1; j <= book[i]; j++) {
System.out.println(i);
}
}
// 输出结果 降序排列
for (int i = book.length-1; i >=0 ; i--) {
for (int j = 1; j <= book[i]; j++) {
System.out.println(i);
}
}
}
}
蓝桥杯 Java 桶排序
最新推荐文章于 2024-07-29 18:00:00 发布