冒泡排序重新認識
阿新 • • 發佈:2018-04-08
body 排序 OS tdi print 倒序 i++ .cn html
習題:將數組前5個元素順序排序,後5個倒序排序
#include <stdio.h> void main(){ int a[10]={11,2,3,4,5,6,7,8,9,10}; int i,j; for(i=0;i<5;i++){ for(j=0;j<5-i-1;j++){ if(a[j]>a[j+1]){ int tmp=a[j]; a[j]=a[j+1]; a[j+1]=tmp; } } }for(i=5;i<10;i++){ //外循環代表需要遍歷的元素 for(j=5;j<10-i+4;j++){ //內循環代表除去最大/最小元素之外需要遍歷的元素,註意這邊(j<?)的取值 if(a[j]<a[j+1]){ int tmp=a[j]; a[j]=a[j+1]; a[j+1]=tmp; } } } for(i=0;i<10;i++){ printf("%d ",a[i]); } printf("\n"); }
參考:冒泡排序圖解
冒泡排序重新認識