DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> Javascript冒泡排序算法詳解
Javascript冒泡排序算法詳解
編輯:關於JavaScript     

比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。
對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。
針對所有的元素重復以上的步驟,除了最後一個。
持續每次對越來越少的元素重復上面的步驟,直到沒有任何一對數字需要比較。

代碼如下:
function sort(elements){
  for(var i=0;i<elements.length-1;i++){
    for(var j=0;j<elements.length-i-1;j++){
      if(elements[j]>elements[j+1]){
        var swap=elements[j];
        elements[j]=elements[j+1];
        elements[j+1]=swap;
      }
    }
  }
}

var elements = [3, 1, 5, 7, 2, 4, 9, 6, 10, 8];
console.log('before: ' + elements);
sort(elements);
console.log(' after: ' + elements);

 
效率:

時間復雜度:最好:O(n),最壞:O(n^2),平均:O(n^2)。

空間復雜度:O(1)。

穩定性:穩定。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved