JS實現排序演算法

2021-08-31 19:03:10 字數 918 閱讀 7679

目錄

一、氣泡排序

/*

* 方法名:sortarr

* 功能介紹:對陣列進行排序(冒泡演算法)

* arguments:

* arr(必輸項):需要排序的陣列;

* action(非必輸項):"up"-公升序,"down"-降序(預設)

* */

let sortarr = function (arr,action)

/*空陣列或者陣列1個元素,不需要排序直接跳出*/

let len = arr.length;

let temp;

if(len <= 1)

for(let i=0;iarr[j+1])

}else

/*空陣列,不需要排序直接跳出*/

let len = arr.length;

let leftarr = ;//快取左邊陣列

let righrarr = ;//快取右邊陣列

if(len <= 1)

//獲取比較基準的索引

let index = math.floor(len/2);

//通過splice獲取到比較基準的資料

let midvalue = arr.splice(index,1);

for(let i=0;imidvalue)else

}/*通過遞迴進行迴圈排序*/

return action ==="up" ?sortarr(leftarr,action).concat(midvalue,sortarr(righrarr,action))

:sortarr(righrarr,action).concat(midvalue,sortarr(leftarr,action));

}

排序演算法 JS實現

原文引用自這裡,這裡只是我自己的學習的補充以及筆記 時間複雜度,o n2 var arr 5,6,3,1,8,7,2,4 function insertsort arr else return arr console.log insertsort arr 時間複雜度,o n2 var arr 5,1...

排序演算法(js實現)

氣泡排序 兩兩比較,遍歷一趟會挑出最大的值放在最後。function bubblesort arr return arr 選擇排序 從頭至尾掃瞄序列,每次找出最小的乙個元素,和第乙個元素交換,接著從剩下的元素中繼續這種選擇和交換方式,最終得到乙個有序序列。function selectsort ar...

js實現排序演算法

系統整理一下排序演算法。氣泡排序實質是小 大 的元素往前 後 調。進行n 1輪對比,每輪對比將最後乙個元素進行冒泡 排序 即每輪對比將最後乙個元素排出 每輪中的最大或最小 隨後將泡泡 排出元素 排除,進行下一次迭代對比,直到沒有元素可交換為止。這種方式通過多次迭代陣列來完成操作,不管是平均還是最壞的...