冒泡排序

最近更新于 2024-05-06 07:58

Table of Contents

环境

平台工具集:Visual Studio 2022 v143
C 语言标准:C17
字符集:Unicode

算法实现

冒泡排序思路非常简单,第一轮将第一个和第二个比较,前者大,两个就交换位置,然后比较第二个和第三个,第三个和第四个……倒数第二个和最后一个,一轮完毕最大的数就在最后一个
第二轮,还是一样,第一个和第二个比较….倒数第三个和倒数第二个比较,此轮完毕,倒数第二大的数就在倒数第二个位置
第三轮,……倒数第四个和倒数第三个比较,此轮完毕,倒数第三大的数就在倒数第三个位置
……

时间复杂度为 O(n^2),稳定的排序算法

void sort(int array[], int n)
{
    for (int i = 1; i < n; ++i)
    {
        for (int j = 0; j < n - i; ++j)
        {
            if (array[j] > array[j + 1])
            {
                int tmp = array[j + 1];
                array[j + 1] = array[j];
                array[j] = tmp;
            }
        }
    }
}
冒泡排序
Scroll to top