import java.util.Scanner;
public class 冒泡排序 {
/**
* @param args 相邻的进行比较
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//f1(); // 基本排序
f2(); // 带结构体带姓名分数
}
public static void f1() {
Scanner scanner=new Scanner(System.in);
int num=scanner.nextInt(); // 保存输入的数字个数
int[] book=new int[num]; // 用数组保存输入的数字
int temp; // temp来做比较的中间值
for (int i = 0; i < book.length; i++) { // 循环读取保存
book[i]=scanner.nextInt();
}
// 冒泡排序 双重循环换位
for (int i = 0; i < num-1; i++) { // num个数只需要进行num-1次排序
for (int j = i+1; j < num; j++) {
if (book[j]<book[i]) {
temp=book[i];
book[i]=book[j];
book[j]=temp;
}
}
}
for (int i = 0; i < num; i++) {
System.out.println(book[i]);
}
}
public static void f2(){
class Student{
String name;
int score;
}
Scanner scanner=new Scanner(System.in);
int num=scanner.nextInt();
Student[] stu=new Student[num];// 保存输入的数字个数
Student temp=new Student(); // temp来做比较的中间值
for (int i = 0; i < num; i++) { // 循环读取保存
stu[i]=new Student();
stu[i].name=scanner.next();
stu[i].score=scanner.nextInt();
}
for (int i = 0; i < num-1; i++) {
for (int j = i+1; j < num; j++) {
if (stu[j].score>stu[i].score) {
temp=stu[i];
stu[i]=stu[j];
stu[j]=temp;
}
}
}
for (int i = 0; i < num; i++) {
System.out.println(stu[i].name);
}
}
}
蓝桥杯 Java 冒泡排序
最新推荐文章于 2024-11-10 08:43:33 发布