什么是冒泡排序?

简介: 什么是冒泡排序?

冒泡排序是一种简单的排序算法,它重复地遍历要排序的列表,比较相邻的元素,并按照大小顺序交换它们,直到整个列表排序完成。冒泡排序的基本思想是每次将最大的元素“冒泡”到列表的末尾。

以下是冒泡排序的示例代码:

void BubbleSort(int* arr, int n) {
    int end = n;
    while (end) {
        int flag = 0;
        for (int i = 1; i < end; ++i) {
            if (arr[i - 1] > arr[i]) {
                int tem = arr[i];
                arr[i] = arr[i - 1];
                arr[i - 1] = tem;
                flag = 1;
            }
        }
        if (flag == 0) {
            break;
        }
        --end;
    }
}

以上代码中,arr是待排序的数组,n是数组的长度。冒泡排序通过不断比较相邻的元素并交换它们的位置来实现排序。在每一轮遍历中,如果发现有元素比它的后一个元素大,则交换它们的位置。通过多次遍历,最大的元素会逐渐“冒泡”到数组的末尾。当一轮遍历中没有发生任何交换时,说明数组已经排序完成,可以提前结束排序

相关文章
|
7天前
冒泡排序
冒泡排序。
16 5
|
6月前
|
搜索推荐
1.冒泡排序
1.冒泡排序
50 0
|
6月前
|
搜索推荐
什么是冒泡排序
什么是冒泡排序
|
搜索推荐 算法
15 冒泡排序
15 冒泡排序
42 0
|
算法 C#
C#之冒泡排序
C#之冒泡排序
49 0
|
算法 搜索推荐 JavaScript
|
机器学习/深度学习 算法 搜索推荐
【c++】冒泡排序
【c++】冒泡排序
93 0