Bubble Sort (泡泡排序法)


概念 - 教學影片

將要排序的對象分作兩部份,一個是已排序的,一個是未排序的。

排序時若是從小到大,最大元素會如同氣泡一樣移至右端,其利用比較相鄰元素的方式,將較大元素交換至右端,所以較大的元素會不斷往右移動,直到適當的位置為止。

作法

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

Pseudo Code

const int N = 5;
int students[N] = {4,3,5,1,7};

for ( int i = 0 ; i < N ; i++ ){

    for ( int j = 0 ; j < N-i-1 ; j++ ){
        if ( students[j] > students[j+1] ){
            // swap( students[j], students[j+1] );
        }
    }
}

results matching ""

    No results matching ""