c語言四種排序演算法完整程式_【C語言】8.冒泡法排序程式設計
阿新 • • 發佈:2021-01-24
技術標籤:c語言四種排序演算法完整程式
氣泡排序(Bubble Sort)是一種簡單直觀的排序演算法。
1. 演算法步驟
將待排序的N個數依次進行相鄰兩個數的比較,如果不符合由小到大的順序要求(即前小後大),則交換兩個數的位置,否則不交換。
待N個數經過N-1次相鄰兩數比較後,最大的數就交換到了最後的位置,這個數就算排好位了,這稱為一趟排序,即一趟排序可以將一個數排到它該放置的位置。
第2趟排序時,只需對除最大數外餘下的N-1個數按第1趟的排序方法進行操作,即可將第2個數排到該排的位置(倒數第二個位置)。
依此類推,對N個數進行N-1趟排序後,則所有數就有序了。
以上排法是升序排序,若降序排序則交換數的條件是相鄰兩個數中前面的數小於後面的數。
2.動畫演示
3.C語言實現
//參考程式碼#include#define N 8int main(){ int a[N]; int i,j,t; printf("請輸入%d個整數:\n",N); for(i=0;i scanf("%d",&a[i]); for(j=0;j-1;j++) for(i=0;i-1-j;i++) if(a[i]>a[i+1]) { t=a[i]; a[i]=a[i+1]; a[i+1]=t; } printf("排序後的結果:\n"); for(i=0;i printf("%4d",a[i]); printf("\n"); }