题解 | #输入整型数组和排序标识,对其元素按照升序或降序进行排序#
输入整型数组和排序标识,对其元素按照升序或降序进行排序
http://www.nowcoder.com/practice/dd0c6b26c9e541f5b935047ff4156309
// 思路:本题考查对数组的排序 可以先将元素存入 arraylist 中, 再调用arraylist.sort(Comparator c)进行排序
/* arraylist.sort(Comparator c) :
元素进行升序排列: Comparator.naturalOrder() 元素进行降序排列:Comparator.reverseOrder()
*/
import java.util.*;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNextInt()){
int size = sc.nextInt(); //接收数组元素个数
List<Integer> list = new ArrayList<>();
for (int i = 0; i < size; i++) { //按数组元素个数 循环接收元素
list.add(sc.nextInt()); //将每一元素放入 list 中
}
int rule = sc.nextInt(); //接收排序规则:一个整数0或1。0代表升序排序
if (rule == 0){ // 0代表升序排序
list.sort(Comparator .naturalOrder());
}else if (rule == 1){ // 1代表降序排序
list.sort(Comparator .reverseOrder());
}
for (Integer n : list){ // 将 list 元素输出,注意元素间用空格隔开
System.out.print(n+ " ");
}
}
}
}