functionvar arr = [0, 4, 2, 1, 3];
var i = j = 0;
for(i; i-1; i++)
}}console.log(arr);
2.遞迴排序
quicksort(
arr)
varpivotindex =
math.
floor(
arr.
length /
2);//找基準,並把基準從原陣列刪除
varpivot =
arr.
splice(
pivotindex,
1)[0];
//定義容器左右陣列
varleft = ;
varright = ;
//比基準小的放在left,比基準大的放在right
for (
vari =
0; i<
arr.
length;
i++)
else }
//遞迴,"..."將乙個陣列轉為用逗號分隔的引數序列
return [...
quicksort(
left),
pivot, ...
quicksort(
right)]; }
console.
log(
quicksort([
0, 4,
2, 1,
3]));
JS幾種常見排序方法
比較相鄰的前後二個資料,如果前面資料大於後面的資料,就將二個 資料交換。function bubblesort arr return arr 1 先從陣列中取出乙個數作為基準數。2 分割槽將比這個數大的數全放到它的右邊,小於或等於它的數全放到它的左邊。3 再對左右區間重複第二步,直到各區間只有乙個數...
js的陣列排序方法
var array 1 4,8,3 6,12 9,8 function compare val1,val2 array.sort compare document.write array sort 方法按照公升序排列陣列項,會呼叫每個陣列項的tostring 轉型方法,然後比較得到的字串。tostr...
js的排序方法集合
a 1 array.prototype.swap function i,j 27 氣泡排序 時間複雜度o n 2 空間複雜度o 1 8array.prototype.bubblesort function 9 16 17 18 選擇排序 時間複雜度o n 2 空間複雜度o 1 19array.pro...