1. 程式人生 > >C語言排序演算法之“氣泡排序法”

C語言排序演算法之“氣泡排序法”

氣泡排序法大家都較熟悉。先定義一個整型陣列a[n],其原理為從a[0]開始,依次將其和後面的元素比較,a[0]>a,則交換它們,一直比較到a[n]。同理對a[1],a[2],...a[n-1]處理,即完成排序。下面列出其程式碼:

void bubble(int *a,int n) /*定義兩個引數:陣列首地址與陣列大小*/ 
{ 
    int i,j,temp; 
    for(i=0;i<n-1;i++) 
        for(j=i+1;j<n;j++) /*注意迴圈的上下限*/ 
            if(a>a[j]) { 
                temp=a; 
                a=a[j]; 
                a[j]=temp; 
            } 
} 

氣泡排序法原理簡單,但其缺點是交換次數多,效率低。