數值型陣列特征值統計
這里特征值涉及到:平均值,最大值,最小值,總和等
求最大值:將陣列第一個元素假設為最大值 int max= arr[0];再然后用寫一個判斷陳述句如果陣列第一個 元素小于當前比較的元素就把當前比較的元素賦值給max if(max<arr[i]){max = arr[i]}
求最小值:定義一個變數這個數大于陣列里的所有元素例:陣列范圍是0-99 那么定義的數就為100 然后寫一個判斷陳述句if(min>arr[i]){min=arr[i]}如果min大于arr[i]遍歷陣列中的元素就把小于的這個數賦值給min ,那么min的值會不斷變化例第一次比較100>50 那么min就是50了 下一次比較50>30 那么min下次就變成30了以此類推;
.陣列元素的賦值(實際開發中,遇到的場景比較多)
陣列的復制
陣列的翻轉
陣列的常見演算法2
1.陣列的擴容與縮容
2.陣列元素的查找
順序查找
優點
缺點
二分查找
優點
缺點
陣列的排序
排序演算法的衡量標準
排序的分類
內部排序的具體演算法
我們需要關注的幾個排序演算法
陣列在計算機中的執行原理
在j計算機中程式都是通過記憶體來執行的,那在java中在編譯之后會產生class檔案是提取到記憶體中正在運行的jvm虛擬機來執行的
java為了便于虛擬機執行java程式他將虛擬機記憶體區域進行了劃分大概劃分 方法區 堆疊 堆 本地方法堆疊 暫存器 重點關注前三個記憶體區域 接下來講講如何配合三塊區域來執行java程式的
首先是方法區 存放編譯以后位元組碼檔案先加載這里 還有一個區域叫堆疊方法運行時所進入的記憶體由于變數是在main方法里面的那也就是說要執行main方法那就是把main方法提取到堆疊里面來進行執行的,其次是堆 堆中用來存放new出來的東西會在這塊堆記憶體中開辟空間并產生地址
這個空間可以比喻成家里的衛生間 廚房 客廳 每塊空間都有自己的功能 首先會將編譯好的class檔案提取到方法區里接下來就會將方法區里的方法加載到堆疊記憶體空間去 然后會執行main方法里的第一行代碼 int a = 10 那么就會先定義一個變數然后在堆疊里面開辟一個空間也就是在main方法里開辟空間 這里面就會存盤資料10 接下看來執行下一行代碼system.out.println(a),這行代碼是直接輸出變數a他就會直接列印出變數a,接下來繼續執行下面的代碼int[]arr = {11,22,33};這時候會先在main方法里開辟arr變數空間一開始這個變數并沒有存資料接著他會執行等號右邊的代碼這個代碼其實是在new一個陣列物件我們說過只要new的話就在堆記憶體開辟空間這塊區域會等分成三塊 第一塊區域存11 第二塊區域存22 第三塊區域存33 這三塊區域都會有自己的索引依次分別問0.1.2 并且也會有一個地址接著他會把這個地址賦值給左邊的變數arr再由arr來指向右邊的陣列物件這就是我們陣列參考型別的變數他的執行原理再往下執行代碼
system.out.println(arr),arr存的是什么啊,他存盤的是不是地址啊,接著代碼繼續執行system.out.println(arr[1]),他在通過arr這個變數可以找到右邊的陣列物件再通過這個地方申請的索引1定位到第二個位置 他就會把第二個位置值22取出來列印給我們看,接著代碼繼續往下走arr[0]= 44arr[1]=55arr[2]=66 ,他會通過arr變數的地址找到右邊的陣列物件再找到第一個位置改成44通過索引1找到第二個索引改成55通過索引2找到第三個位置改成66,接著在執行下邊代碼system.out.println(arr[0])system.out.println(arr[1])system.out.println(arr[2]),他再次通過arr變數里的地址找到右邊的陣列物件,索引1找到的是44,索引2找到的是55,索引3找到的是66
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/549551.html
標籤:其他
上一篇:快速冪演算法
