题解 | #对数组进行排序#
输入整型数组和排序标识,对其元素按照升序或降序进行排序
https://www.nowcoder.com/practice/dd0c6b26c9e541f5b935047ff4156309
利用 Arrays.sort()
根据flag,决定Comparator的compare函数写法
import java.util.Arrays; import java.util.Comparator; import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while(sc.hasNextInt()){ int num=sc.nextInt(); Integer[] arr=new Integer[num]; for (int i = 0; i <num; i++) { arr[i]=sc.nextInt(); } int flag=sc.nextInt(); Arrays.sort(arr,new Comparator<Integer> (){ //注意arr不能是int,需要时 integer类型 @Override public int compare(Integer o1, Integer o2) { if(flag==0){ return o1-o2; //升序 }else if(flag==1){ return o2-o1; } return 0; } }); for (int i = 0; i < arr.length; i++) { System.out.print(arr[i]+" "); } } } }