排序算法(三):選擇排序

概念

選擇一個數和後面的所有數比較,確定現在位置的值

時間複雜度

最好:O(n²)
最壞:O(n²)
平均:O(n²)

代碼


    function select_sort(arr) {
      let leg = arr.length
      for (let i = 0; i < leg; i++) {
        for (let j = i + 1; j < leg; j++) {
          if (arr[i] > arr[j]) {
            [arr[i], arr[j]] = [arr[j], arr[i]]
          }
        }
      }
    }
    var sortArr = [9, 6, 3, 5, 2, 1, 7, 343, 6, 643, 243, 544, 5, 63, 234, 0, 56, 123]
    select_sort(sortArr)
    console.log(sortArr)
    // [0, 1, 2, 3, 5, 5, 6, 6, 7, 9, 56, 63, 123, 234, 243, 343, 544, 643]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章