题目内容:
输入
N组数据
名字+成绩
输出:按照成绩升序或降序排列,若成绩相同,按照录入的先后顺序
import java.util.Scanner;
public class Score {
private static String[] names;
private static int[] grades;
private static boolean compare(int i, int j, int flag){
return flag == 0 ? grades[i] > grades[j] : grades[i] < grades[j];
}
private static void exch(int i, int j){
String tempS = names[j];
int tempG = grades[j];
names[j] = names[i];
grades[j] = grades[i];
names[i] = tempS;
grades[i] = tempG;
}
public static void sort(int flag){
for(int i = 1; i < names.length; i++)
for(int j = i; j > 0 && compare(j,j - 1,flag); j--){
exch(j,j - 1);
}
}