国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

js 排序算法(持續更新中)

dackel / 2833人閱讀

摘要:以此類推,直到所有元素均排序完畢。假設中最小值得為尋找最小的數將最小數的索引保存將實際最小值為賦值給,即獲得當前一輪排序后的新過程結果控制臺實例

冒泡排序

//原理:每次都是前后兩兩比較然后根據大小交換位置(可以從小到大,或者相反)
//1.prepare swap fn
function swap(array,index1,index2) {
    var aux = array[index1];
    array[index1] = array[index2];
    array[index2] = aux;
}
//2.double for
function bubbleSort(arr){
    let length = arr.length
    for (let i=0;i arr[j+1]){
                swap(arr,j,j+1)
            }
        }
        console.log(arr)    //過程
    } 
    console.log("result",arr)   //結果
}
let test = [1,5,4,3,2]
bubbleSort(test)

控制臺運行實例:

選擇排序

function swap(array,index1,index2) {
    var aux = array[index1];
    array[index1] = array[index2];
    array[index2] = aux;
}
//selectionSort
//原理:首先在未排序序列中找到最?。ù螅┰兀娣诺脚判蛐蛄械钠鹗嘉恢茫?//然后,再從剩余未排序元素中繼續尋找最?。ù螅┰?,然后放到已排序序列的末尾。
//以此類推,直到所有元素均排序完畢。 
function selectionSort(arr) {
    let len = arr.length;
    for (let i = 0; i < len - 1; i++) {
        let minIndex = i;   //假設arr中最小值得index為minIndex
        for (let j = i + 1; j < len; j++) {
            if (arr[j] < arr[minIndex]) {     // 尋找最小的數
                minIndex = j;                 // 將最小數的索引保存
            }
        }
        swap(arr,minIndex,i)    //將實際最小值index(為i)賦值給minIndex,即獲得當前一輪排序后的新arr
        console.log(arr)   //過程
    }
    console.log("result",arr)   //結果
    return arr;
} 
let test = [5,4,1,3,2]
selectionSort(test) 

控制臺實例:

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/104869.html

相關文章

  • 前端需要知道的數據結構與算法(持續更新...)

    摘要:通常需要在實際的計算機運行才知道具體的執行時間。算法的執行時間往往和算法代碼中語句執行的數量有關??臻g復雜度運行一段程序的內存占用,空間復雜度通常指的是算法程序在計算機只想中只想所需要的存儲空間。 基本數據結構 JS 數據類型 基本類型(棧 stack): Number String Boolean Null Undefined 和 Symbol(es6 新增)引用類型(堆 heap)...

    Jensen 評論0 收藏0
  • JS求數組最大(最?。┲祬R總(持續更新

    摘要:如何使用,在一個類型的數組里,查找最大或最小數呢以下介紹五個方法。利用代碼如下解釋方法就是通過一個函數,針對一個累加器和數組中的每一個元素,將一個數組最終減少到一個值。如果求最小值,將改成。 如何使用JS,在一個Number類型的數組里,查找最大(或最?。的?? 以下介紹五個方法。(如果有新方法,后續會更新,也歡迎各位留言提供新方法) 1. 不使用任何庫函數 代碼如下: functio...

    church 評論0 收藏0
  • 【程序員必備】知識點 持續更新

    TCP/IP HTTP和HTTPS有何區別? httpbin 一個簡單的HTTP請求和響應服務。 TCP的三次握手與四次揮手 通俗易懂版,詳細版本 MySQL CHAR和VARCHAR存取的差別 《高性能MySQL》筆記 - MySQL 鎖的基本類型 MySQL中的鎖之一:鎖的必要性及分類 MySQL中的鎖之二:行鎖、頁鎖、表鎖 MySQL Like與Regexp的區別 數據結構 數...

    hellowoody 評論0 收藏0
  • 【程序員必備】知識點 持續更新

    TCP/IP HTTP和HTTPS有何區別? httpbin 一個簡單的HTTP請求和響應服務。 TCP的三次握手與四次揮手 通俗易懂版,詳細版本 MySQL CHAR和VARCHAR存取的差別 《高性能MySQL》筆記 - MySQL 鎖的基本類型 MySQL中的鎖之一:鎖的必要性及分類 MySQL中的鎖之二:行鎖、頁鎖、表鎖 MySQL Like與Regexp的區別 數據結構 數...

    zhjx922 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<