21xrx.com
2024-05-20 19:51:51 Monday
登录
文章检索 我的文章 写文章
C++语言实现冒泡排序
2023-07-06 12:52:24 深夜i     --     --
C++语言 冒泡排序 排序算法 数组 循环

冒泡排序是一种经典的排序算法,也是学习数据结构和算法时必须掌握的一种算法。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]) {

        swap(arr[j], arr[j + 1]);

      }

    }

  }

}

其中,`arr`是需要排序的数组名,`n`表示数组中元素的个数。代码中的两个`for`循环分别代表外层和内层的比较操作。在内层循环中,每次比较相邻的两个元素,如果前一个元素大于后一个元素,就使用`swap`函数交换它们的位置。

使用上面的代码实现冒泡排序非常简单,只要将需要排序的数组和数组长度作为参数传递给`bubbleSort`函数即可。下面是一个使用示例:


int main() {

  int arr[] = 1;

  int n = sizeof(arr) / sizeof(arr[0]);

  bubbleSort(arr, n);

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

    cout << arr[i] << " ";

  }

  cout << endl;

  return 0;

}

输出结果为:


1 2 3 4 5 6

可以看到,使用上面的代码,我们已经成功地排好了一个包含6个元素的整型数组。

总之,冒泡排序是一种简单、直观的排序算法,对于初学者来说非常适合用来加深对算法和数据结构的理解。使用C++语言实现冒泡排序只要掌握好循环和数组的基本操作就能够轻松实现。

  
  

评论区

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