1. 程式人生 > >冒泡排序重新認識

冒泡排序重新認識

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"); }

參考:冒泡排序圖解

冒泡排序重新認識