獲取數組中的最大值

假設存在一個數組let target = [1, 12, 45, 11, 5, -2],獲取其中最大值。下面是我想到的兩種解決思路,若是有其餘解決思路不妨交流一下,互相學習和總結。
第一種:按照冒泡排序的思路,僅實現一輪排序,其最後的值就是數組中最大的值數組

// 冒泡排序第一層循環
function getMaxNumber(arr) {
  let length = arr.length;
  
  // 將最大的數值排到最後
  for (let i = 0; i < length; i++) {
    if (arr[i] > arr[i + 1]) {
      let save = arr[i]
      arr[i] = arr[i + 1]
      arr[i + 1] = save
    }
  }
  
  return arr[length - 1]
}

// 調用函數
let result = getMaxNumber(target)
console.log(result)  // -> 45

第二種:利用數組sort方法,進行升序排序函數

function getMaxNumberBySort(arr) {
  let length = arr.length

  return arr.sort((a, b) => {
    return a - b
  })[length - 1]

}

// 調用函數
let result = getMaxNumberBySort(target)
console.log(result)  // -> 45
相關文章
相關標籤/搜索