c++——冒泡排序

#include <iostream>
using namespace std;



//冒泡排序
//比较相邻元素,如果第一个大于第二个,两者交换位置,最后找出最大值
//最终效果即升序



int main() 
{
    //利用冒泡排序实现升序序列
    int arr[] = { 4,2,3,0,5,1,9,6,8 };
    int b = sizeof(arr) / sizeof(arr[0]);//数组长度
    cout << "数组排序前:" << endl;
    for (int i = 0; i < b; i++)
    {
        cout << arr[i]<<"  ";
    }
    cout << endl;
    //排序
    //总排序轮数:元素个数-1
    for (int k = 0; k < b - 1; k++) //k为当前轮数
    {
        //内层对比:次数=元素个数-当前轮数-1
        for (int j = 0; j < b - k - 1; j++) //j为内存循环次数
        {
            if (arr[j]>arr[j+1])
            {
                int temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }

            }
            
    }
    cout << "数组排序后:" << endl;
    for (int i = 0; i < b; i++)
    {
        cout << arr[i]<<"  ";
    }
    cout << endl;
    
    
    system("pause");

    return 0;
}

 

posted @ 2021-12-06 23:03  Whp_bicycle  阅读(68)  评论(0)    收藏  举报