排序算法——冒泡排序(C++实现)

冒泡排序的中心思想:

将数组中的相邻元素进行两两比较,若逆序则交换。

#include <iostream>
#define N 10
using namespace std;

int main()
{
    int arr[N]={2,5,1,3,4,10,9,8,7,6};
    int i,j,k;
    int temp;
    cout<<"排序前:"<<endl;
    for(i=0;i<N;i++)
       cout<<arr[i]<<" ";
    cout<<endl;
    for(i=1;i<N;i++)/*外循环控制排序轮数*/
    {
         for(j=0;j<=N-i;j++)/*每轮排序对相邻的两个数进行比较*/
        {
            if(arr[j]<arr[j+1])/*逆序就交换*/
            {
                temp=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=temp;
            }
        }
        cout<<"第"<<i<<"轮排序结果:";
        for(k=0;k<N;k++)
            cout<<arr[k]<<" ";
        cout<<endl;
    }

    cout<<"排序后:"<<endl;
    for(i=0;i<N;i++)
       cout<<arr[i]<<" ";

    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_36616692/article/details/80897625
今日推荐