21xrx.com
2024-05-20 14:25:38 Monday
登录
文章检索 我的文章 写文章
C++ 冒泡排序法代码
2023-07-09 16:14:05 深夜i     --     --
C++ 冒泡排序 代码

冒泡排序是经典的排序算法之一,它的思想就是重复地遍历列表,每次比较相邻的两个元素,如果顺序不对就交换他们的位置,这样一遍一遍地排序下去,最终就能得到一个有序的列表。

下面是 C++ 代码实现:


void BubbleSort(int arr[], int n) {

  for (int i = 0; i < n-1; ++i) {

    for (int j = 0; j < n-i-1; ++j) {

      if (arr[j] > arr[j+1]) {

        int temp = arr[j];

        arr[j] = arr[j+1];

        arr[j+1] = temp;

      }

    }

  }

}

代码中,`arr` 是要排序的数组,`n` 是数组的长度。`BubbleSort` 函数内部有两个嵌套的循环,外层循环控制排序的趟数,内层循环控制每一趟中元素的比较和交换。

在内层循环中,比较的是相邻的两个元素 `arr[j]` 和 `arr[j+1]` 的大小关系,如果前者大于后者,就交换他们的位置。这样一趟下来,最大的元素就会被沉底,排在最末尾的位置。

按照这样的方式重复进行排序,直到排序完成。时间复杂度为 $O(n^2)$,性能相对较差,不适用于大型数据的排序,但对于小型数据的排序则表现良好。

在学习排序算法时,理解并能实现冒泡排序是非常重要的一步。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复