[藍橋杯][演算法提高VIP]前10名 Java陣列,list升序,降序,逆序函式Collections.sort和Arrays.sort的使用
list升序,降序,逆序
List<Integer>list =new ArrayList<Integer>();
//如果list是 5 7 2 6 8 1 4
1、升序:
Collections.sort(list) //list: 1 2 4 5 6 7 8
2、降序:
Collections.sort(list,Collections.reverseOrder())//list:8 7 6 5 4 2 1
3、逆序;
Collections.reverse(list)//list:4 1 8 6 2 7 5
陣列升序,降序
int[] a={5 7 2 6 8 1 4}
1、升序:
Arrays.sort(a)//a: 1 2 4 5 6 7 8
2、降序: (一定要注意呼叫Collections.reverseOrder()需要是Integer[],而不是int[])
Integer[] a={5 7 2 6 8 1 4}
Arrays.sort(a,Collections.reverseOrder())//a: 8 7 6 5 4 2 1
補充:
Arrays.asList(陣列)//將陣列轉成list
Arrays.asList(a);
List<Integer>list =new ArrayList<Integer>(Arrays.asList(a));
下面來個逆序例題
題目描述
資料很多,但我們經常只取前幾名,比如奧運只取前3名。現在我們有n個資料,請按從大到小的順序,輸出前10個名資料。
資料規模和約定
10< =n< =200,各個整數不超出整型範圍
輸入
兩行。
第一行一個整數n,表示要對多少個資料
第二行有n個整數,中間用空格分隔。表示n個資料。
輸出
一行,按從大到小排列的前10個資料,每個資料之間用一個空格隔開。
樣例輸入
26 54 27 87 16 63 40 40 22 61 6 57 70 0 42 11 50 13 5 56 7 8 86 56 91 68 59
樣例輸出
91 87 86 70 68 63 61 59 57 56
import java.util.Arrays;
import java.util.Collections;
import java.util.Scanner;
public class 前10名 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
Integer[] a = new Integer[n];
for(int i=0;i<n;i++)
a[i] = in.nextInt();
Arrays.sort(a, Collections.reverseOrder());
for(int i=0;i<10;i++)
if(i==9)
System.out.println(a[i]);
else
System.out.print(a[i]+" ");
}
}
相關文章
- [藍橋杯][演算法提高VIP]尤拉函式演算法函式
- [藍橋杯][演算法提高VIP]大數加法演算法
- [藍橋杯][演算法提高VIP]超級瑪麗演算法
- [藍橋杯][演算法提高VIP]奪寶奇兵 dp演算法
- [藍橋杯][演算法提高VIP]分蘋果 線段樹演算法蘋果
- 題目 1501: [藍橋杯][演算法提高VIP]分蘋果演算法蘋果
- 使用sort方法實現陣列升序降序陣列
- 藍橋杯演算法提高——字串匹配(Java)演算法字串匹配Java
- [藍橋杯][演算法提高VIP]最大乘積 貪心 雙指標演算法指標
- [藍橋杯][演算法訓練VIP]方格取數演算法
- 藍橋杯 演算法提高 字串壓縮演算法字串
- [Java] 藍橋杯ADV-203 演算法提高 8皇后·改Java演算法
- Java實現 藍橋杯 演算法提高 八數碼(BFS)Java演算法
- [Java] 藍橋杯ADV-147 演算法提高 學霸的迷宮Java演算法
- [Java] 藍橋杯ADV-185 演算法提高 五次方數Java演算法
- [Java] 藍橋杯ADV-202 演算法提高 最長公共子序列Java演算法
- [Java] 藍橋杯ADV-209 演算法提高 c++_ch02_04Java演算法C++
- [Java] 藍橋杯ADV-213 演算法提高 3-2求存款Java演算法
- [藍橋杯][演算法提高VIP]上帝造題五分鐘 (線段樹+區間最小值)演算法
- 藍橋杯 演算法提高 拿糖果(完全揹包dp)演算法
- 藍橋杯 -- 演算法提高 身份證號碼升級演算法
- [Java] 藍橋杯ADV-210 演算法提高 2-1螢幕列印Java演算法
- 藍橋杯-合併數列
- 藍橋杯-波動數列
- 藍橋杯——暴力列舉篇
- 藍橋杯 分巧克力(Java)Java
- 藍橋杯 (java)演算法訓練 數對Java演算法
- [Java] 藍橋杯ADV-194 演算法提高 盾神與積木遊戲Java演算法遊戲
- 藍橋杯-矩陣翻硬幣矩陣
- [藍橋杯][基礎練習VIP]矩形面積交
- 藍橋杯--演算法訓練演算法
- 藍橋杯—演算法訓練演算法
- 藍橋杯
- 藍橋杯——特別數的和
- 問題 1462: [藍橋杯][基礎練習VIP]Huffuman樹
- 藍橋杯 演算法訓練 素因子去重(Java)演算法Java
- [Java] 藍橋杯ALGO-117 演算法訓練 友好數JavaGo演算法
- JAVA裡List集合中的物件根據物件的某個屬性值降序或者升序排序Java物件排序