21xrx.com
2024-05-20 11:09:55 Monday
登录
文章检索 我的文章 写文章
C++实现冒泡排序
2023-07-08 03:12:18 深夜i     --     --
C++ 实现 冒泡排序

冒泡排序是一种简单但是不是最优的排序算法,它的原理非常简单,就是通过不断的交换相邻的元素,将较大或者较小的元素“冒泡”到数组的一端,从而实现排序。下面我们就来介绍一下使用C++语言如何实现冒泡排序。

首先,我们需要定义一个数组来存储待排序的元素。这里我们简单的定义一个长度为5的整型数组:


int arr[5] = 5;

接着,我们就可以编写冒泡排序的代码,代码如下:


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

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

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

      int temp = arr[j];

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

      arr[j+1] = temp;

    }

  }

}

上面的代码中,我们使用了两个嵌套的循环来实现冒泡排序。外层的循环控制排序的次数,即从数组的第一个元素开始,到倒数第二个元素结束;内层的循环则用来遍历数组中的元素,判断相邻元素的大小关系,如果需要交换则进行交换。

最后,我们可以使用for循环来打印排序后的结果:


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

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

}

完整的代码如下:


#include <iostream>

using namespace std;

int main() {

  int arr[5] = 2;

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

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

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

        int temp = arr[j];

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

        arr[j+1] = temp;

      }

    }

  }

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

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

  }

  return 0;

}

总结一下,通过上述的代码可以看到,C++实现冒泡排序是非常简单的,只需要使用两个嵌套的循环就可以实现。但需要注意的是,冒泡排序并不是最优的排序算法,它的时间复杂度为O(n^2),对于大规模的数据排序时效率较低,因此在实际应用中需要考虑使用更加高效的排序算法。

  
  

评论区

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