成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

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

dackel / 2842人閱讀

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

冒泡排序

//原理:每次都是前后兩兩比較然后根據(jù)大小交換位置(可以從小到大,或者相反)
//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)   //結(jié)果
}
let test = [1,5,4,3,2]
bubbleSort(test)

控制臺運(yùn)行實(shí)例:

選擇排序

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

控制臺實(shí)例:

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/104869.html

相關(guān)文章

  • 前端需要知道的數(shù)據(jù)結(jié)構(gòu)與算法(持續(xù)更新...)

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

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

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

    church 評論0 收藏0
  • 【程序員必備】知識點(diǎn) 持續(xù)更新

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

    hellowoody 評論0 收藏0
  • 【程序員必備】知識點(diǎn) 持續(xù)更新

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

    zhjx922 評論0 收藏0

發(fā)表評論

0條評論

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