冒泡排序 cpp实现

Posted lhw-

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了冒泡排序 cpp实现相关的知识,希望对你有一定的参考价值。

#include<bits/stdc++.h>
using namespace std;
void Bubblesort(int a[],int n){
    for(int i=0;i<n-1;i++){
        int flag = 0;
        for(int j=0;j<n-i-1;++j){   //注意内层是n-i-1就行
            if(a[j]>a[j+1]){
                int temp=a[j];
                a[j]=a[j+1];
                a[j+1]=temp;
                flag=1;             //发生交换,改变flag值
            }
            if(flag==0 && j==n-i-1){
                return;             //如果内层循环一次结束都没有发生交换,说明已经排好顺序了,减少排序趟数
            }
        }//j
    }//i
}
int main(){
    int a[10]={3,9,6,4,2,1,0,32,4,23};
    int n=10;
    Bubblesort(a,n);
    for(int i=0;i<n;i++){
        cout<<a[i]<<" ";
    }
}

 

以上是关于冒泡排序 cpp实现的主要内容,如果未能解决你的问题,请参考以下文章

冒泡排序的三种实现

c_cpp 冒泡排序的.cpp

冒泡排序经典排序算法代码

c_cpp 递归冒泡排序

c_cpp 冒泡排序

c_cpp 冒泡排序 - 递归