javascript實現氣泡排序?

氣泡排序,是程式設計中一種較簡單的且基本的排序演算法。在應聘職位中我們也常常會遇到此類試題。其原理是重複地對要排序的數進行大小比較,一次比較兩個元素。如果第一個數比第二個數大,則交換順序,把第二個小的數放前面,不斷比較,直到形成一串由小到大排序的數字。下面給大家詳細介紹js中如何實現氣泡排序。

工具/原料

sublime text 3編輯器(也可選擇其他編輯器) google chrome瀏覽器(或其他瀏覽器)

方法/步驟

首先開啟sublime text 3,新建一個html檔案。

javascript實現氣泡排序

新增一個按鈕,如圖。

javascript實現氣泡排序

然後是寫js程式碼。首先申明一個數組並賦值,然後定義一箇中間變數iNum賦值為零:

var aNumber = [10, 23, 2, 4, 6, 8, 26, 43, 66, 33, 90, 75];

var iNum = 0;

然後使用for迴圈遍歷陣列,第一個為迴圈次數,第二個為比較兩個數大小:

for (var i =0 ; i <= aNumber.length - 1; i++) {

for (var j = 0 ; j <= aNumber.length-1-i ; j++) {

}

}

接著是比較兩個數字的大小,如果第一個數比第二個數大,則交換順序,存放在中間變數iNum中,並把第二個小的數放前面,

if (aNumber[j] > aNumber[j+1]) { //降序改為“<”

iNum = aNumber[j];

aNumber[j] = aNumber[j+1];

aNumber[j+1] = iNum;

}

javascript實現氣泡排序

最後列印輸出結果,在瀏覽器中檢視,此結果為升序:

alert(aNumber.toString());

javascript實現氣泡排序

javascript實現氣泡排序

注意事項

如果要改為降序,則只需將if 條件中aNumber[j] > aNumber[j+1],改為"

數字, 元素, 大小, 順序, 排序,
相關問題答案