前提: 通過scanner可以獲取控制錄入的資料;
通過鍵盤錄入整數;
使用陣列將整數封存;
陣列的容量為15;
控制台一直錄入,往陣列中儲存資料,陣列中始終保持最新的15個資料;
為了方便檢查,在控制台輸出;
分析:
①scanner sc = new scanner(system.in) ;
② int array = new int[15] ;
③ 定義好長度為15的陣列後, 思考的問題是,怎樣儲存超出array.length? 一種想法是在存入第16個資料時, 利用for迴圈將整個陣列向前平移一位, 但是在資料量龐大的情況下, 這種做法無疑效率很低, 於是可以提出另乙個思路, 就是將第16個資料覆蓋住第乙個資料(即索引為0的那個值);
④ 我們可以發現規律:定義計數器count, 初始化int count = 0,每當存入乙個值之後 , count++, 當count = 15時, 這時, 鍵入的值應該放在0索引出, 即就是count%15 ==0 ;
**如下:
演算法 陣列的應用
1,求最值 最大值,最小值 方法一 public class oneday int max 0 for int i 0 i arr.length i system.out.println max 2,選擇排序 乙個和所有比 int arr for int i 0 i arr.length i for...
整數二分 演算法 數的範圍
給定乙個按照公升序排列的長度為n的整數陣列,以及 q 個查詢。對於每個查詢,返回乙個元素k的起始位置和終止位置 位置從0開始計數 如果陣列中不存在該元素,則返回 1 1 輸入格式 第一行包含整數n和q,表示陣列長度和詢問個數。第二行包含n個整數 均在1 10000範圍內 表示完整陣列。接下來q行,每...
結構上的演算法 陣列
陣列實際上是以數為索引,以某種結構為排列的一種結構,通常要解決的問題即是查詢,排序,字串,各種數字類問題等 陣列問題優先要向o n 然後是o logn 考慮 通用型演算法有 基於o n 的partition演算法 每5個作插入,所有中間值作傳統partition演算法的select中位數演算法 基於...