题解 | #其元素按照升序或降序进行排序#
输入整型数组和排序标识,对其元素按照升序或降序进行排序
https://www.nowcoder.com/practice/dd0c6b26c9e541f5b935047ff4156309
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n =Integer.parseInt(sc.nextLine()); String s1 = sc.nextLine(); int flag = Integer.parseInt(sc.nextLine()); String[] sArr = s1.split(" "); int[] ints = new int[sArr.length]; for(int i=0;i<sArr.length;i++){ ints[i] =Integer.parseInt(sArr[i]); } if(flag == 0){ //升序 int[] ints1 = getOrderByDesc(ints); for(int i =0;i<ints1.length;i++){ System.out.print(ints1[i]+" "); } }else{ int[] ints1 = getOrderBy(ints); for(int i =0;i<ints1.length;i++){ System.out.print(ints1[i]+" "); } } } //冒泡排序(降序) public static int[] getOrderBy(int[] ints){ for(int i=0;i<ints.length - 1;i++){ for(int j=0;j<ints.length - i - 1;j++){ int temp = 0; if(ints[j] < ints[j+1]){ temp = ints[j+1]; ints[j+1] = ints[j]; ints[j] = temp; } } } return ints; } //冒泡排序(升序) public static int[] getOrderByDesc(int[] ints){ for(int i=0;i<ints.length - 1;i++){ for(int j=0;j<ints.length - i - 1;j++){ int temp = 0; if(ints[j] > ints[j+1]){ temp = ints[j+1]; ints[j+1] = ints[j]; ints[j] = temp; } } } return ints; } }