對於乙個陣列,請設計乙個高效演算法計算需要排序的最短子陣列的長度。
給定乙個int陣列a和陣列的大小n,請返回乙個二元組,代表所求序列的長度。(原序列位置從0開始標號,若原序列有序,返回0)。保證a中元素均為正整數。
解題思路:
從左開始遍歷陣列,記錄下已經遍歷部分的最大值max,如果遍歷的數值小於max時,記錄這種情況下最右的位置right。
從左開始遍歷陣列,記錄下已經遍歷部分的最大值min,如果遍歷的數值大於min時,記錄這種情況下最右的位置left。
public int shortestsubsequence(int a, int n) else
}for(int i=a.length-1;i>=0;i--)else
}if(l==r)return
0; else
return (l-r+1);
}
陣列練習題
2 隨機生成乙個五位以內的數,然後輸出該數共有多少位,每位分別是什麼 3 開發乙個標題為 flipflop 的遊戲應用程式。它從1計數到100,遇到3的倍數就替換為單詞 flip 5的倍數就替換為單詞 flop 既為3的倍數又為5的倍數則替換為單詞 flipflop 5 生成13位條形碼 ean 1...
練習題 Linux awk陣列
有命令 awk begin 為了讓執行的結果是78,應該填 語句 a.print arr 2 03479 b.print arr 2,79 c.idx 2 subsep 79 print arr idx d.print arr 2,79 1.awk 中陣列叫做關聯陣列 associative arr...
物件陣列練習題
生成隨機數 math.random 返回值型別double 四捨五入取整 math.round double d 返回值型別long。public class studenttest system.out.println 問題二 使用氣泡排序按學生成績排序,並遍歷所有學生資訊 for int i 0...