JS實現氣泡排序與快速排序

2021-09-25 10:06:46 字數 857 閱讀 7573

一、氣泡排序

氣泡排序是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果它們的順序錯誤就把它們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢「浮」到數列的頂端。

(1)比較相鄰的元素。如果第乙個比第二個大,就交換它們兩個;

(2)對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對,這樣在最後的元素應該會是最大的數;

(3)針對所有的元素重複以上的步驟,除了最後乙個;

(4)重複步驟1~3,直到排序完成。

**實現

function bubblesort(arr) }}

return arr;

}

二、快速排序首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小(大)元素,然後放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。

**實現

function selectionsort(arr) 

}temp = arr[i];

arr[i] = arr[minindex];

arr[minindex] = temp;

}return arr;

}

js氣泡排序和快速排序

氣泡排序 兩層for迴圈進行遍歷 逐個比較,大的放右邊。在這裡插入 片 氣泡排序 let arr for let i 0 i 300 i function sort2 array 用於交換素組內容的方法 function exchange arrr,x,y 為了將兩種排序的快慢進行比較,我們需要獲取...

氣泡排序與快速排序

氣泡排序與快速排序屬於互換類的排序方法。所謂互換排序是指借助資料元素之間的互相交換進行排序的一種方法。1.1氣泡排序 演算法情景 將乙個無序的陣列進行氣泡排序 氣泡排序方案1 演算法思路 氣泡排序方案1的排序思想就是外層迴圈n 1 內層迴圈n i 1次,內層的每次的迴圈都是將最大的數字下沉到最後位置...

氣泡排序與快速排序

一 氣泡排序 相信氣泡排序大家都知道,無非是每一趟排序時將相鄰兩個元素進行交換,根據從大到小或從小到大的順序,交換起來略有不同,如此進行n 1次排序即可得到整個陣列有序。1 平均時間複雜度為o n 2 2 最好情況下時間複雜度為o n 此時設定標誌位,元素有序時直接退出 3 最壞之間複雜度為o n ...