1. 程式人生 > >八大內部排序之——氣泡排序

八大內部排序之——氣泡排序

***  氣泡排序  最壞複雜度 O(n^2)   穩定排序 ***

#include <iostream>
using namespace std;

void print(int *a,int n){
    for(int i=0;i<n;i++){
        cout<<a[i]<<" ";
    }
    cout<<endl;
}

int main()
{
    int a[100];
    int n;
    int tem;

    cin>>n;
    for(int i=0;i<n;i++){
        cin>>a[i];
    }

    // 氣泡排序
    for(int i=1;i<=n-1;i++){
        int flg=false;
        for(int j=1;j<=n-i;j++){
            if(a[j]<a[j-1]){
                tem = a[j-1];
                a[j-1]=a[j];
                a[j]=tem;
                flg=true;
            }
        }
        if(!flg){
            break;
        }
    }

    print(a,n);

    return 0;
}

/*
5
5 1 3 2 4
*/