JS 常見排序演算法

2021-08-09 19:56:26 字數 1575 閱讀 6202

氣泡排序

function

bubblesort

(myarray)}}

return myarray;

}function

swap

(myarray, p1, p2)

var myarray =[3

,44,38

,5,47

,15,36

,26,27

,2,46

,4,19

,50,48

]var result =

bubblesort

(myarray)

console.

log(result)

選擇排序

function

selectionsort

(myarray)

}// 如果當前位置不是最小值,將其換為最小值

if(i != min)

}return myarray;

}function

swap

(myarray, p1, p2)

var myarray =[3

,44,38

,5,47

,15,36

,26,27

,2,46

,4,19

,50,48

]var result =

selectionsort

(myarray)

console.

log(result)

快速排序

var

quicksort

=function

(myarray)

// 中間基準值的index

var pivotindex = math.

floor

(myarray.length /2)

;// 基準值

var pivot = myarray.

splice

(pivotindex,1)

[0];

var left =

;var right =

;// 小的放左邊,大的放右邊

for(

var i =

0; i < myarray.length; i++

)else

}// 遞迴

// 把陣列合併在一起

return

quicksort

(left)

.concat

([pivot]

,quicksort

(right));

};var myarray =[3

,44,38

,5,47

,15,36

,26,27

,2,46

,4,19

,50,48

]var result =

quicksort

(myarray)

console.

log(result)

其他排序方法,詳見github:

js常見排序演算法

排序演算法是js最基礎的演算法 1.氣泡排序 2.快速排序 3.選擇排序 4.插入排序 氣泡排序 氣泡排序的思想就是從左到右依次比較陣列a相鄰的兩個數,將較大的數放到後面,一輪比較之後,最大的數會排到最後面 第二輪比較後次大的數會在倒數第二的位置,直到進行a.length次比較後,陣列就會公升序排列...

常見排序演算法 js

共總結了冒泡,選擇,插入,歸併,快速,希爾,堆七種排序方式,而v8引擎sort的排序 陣列長度小於等於 10的用插入排序,其它的用快速排序。不穩定演算法 快 希 選 堆 以下是演算法可能涉及到的公共函式 排除非陣列 function checkarray array 交換兩個元素 function ...

js常見排序演算法

找出最大的排在後面 var bubblesort function originalarray return arr 找出最小的排在前面 var selectionsort function originalarray if minindex i return arr var insertionso...