查找數組中的最大值(最小值)及相對應的下標


簡單的封裝一個方法

假設數組 arr 中的最大值max或最小值min 為arr[0], 通過max或min與數組 arr 的值進行比較 ,得到想要的結果

(1)獲取數組最大值(最小值)

 //獲取最大值
1
function getMax(arr) { 2 //假設最大值max 為arr[0] 3 var max = arr[0]; 4 //遍歷對比 5 for (var i = 0; i < arr.length; i++) { 6 //若max小於當前項 說明不是最大值 將當前項的值賦予max 7 // 繼續遍歷對比找到最大的值 8 if (max < arr[i]) { 9 max = arr[i]; 10 } 11 } 12 return max; 13 }
 //獲取最小值
1
function getMin(arr) { 2 var min = arr[0]; 3 for (var i = 0; i < arr.length; i++) { 4 if (min > arr[i]) { 5 min = arr[i]; 6 } 7 } 8 9 return min; 10 }

 

(2)獲取數組最大值(最小值)的下標

 //獲取最大值的下標
1
function getMaxIndex(arr) { 2 var max = arr[0]; 3 //聲明了個變量 保存下標值 4 var index = 0; 5 for (var i = 0; i < arr.length; i++) { 6 if (max < arr[i]) { 7 max = arr[i]; 8 index = i; 9 } 10 } 11 return index; 12 }
//獲取最小值的下標
1
function getMinIndex(arr) { 2 var min = arr[0]; 3 //聲明了個變量 保存下標值 4 var index = 0; 5 for (var i = 0; i < arr.length; i++) { 6 if (min > arr[i]) { 7 min = arr[i]; 8 index = i; 9 } 10 } 11 return index; 12 }
注:獲取數組最大值(最小值)的下標時,當數組中最大值(最小值)有重復項時,返回的index值為數組中第一個最大值(最小值)的下標

舉個栗子:
1 var arr = [66,3,66,66,3];
2 //打印結果
3 console.log(getMax(arr));       //  66
4 console.log(getMaxIndex(arr));  //  0
5 console.log(getMin(arr));       //  3 
6 console.log(getMinIndex(arr));  //  1

 





免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM