21xrx.com
2024-12-22 23:13:58 Sunday
登录
文章检索 我的文章 写文章
C++实现冒泡排序算法
2023-06-28 15:17:03 深夜i     --     --
C++ 冒泡排序 算法

在计算机编程中,冒泡排序是一种非常基础的排序算法,它可以将一个序列按照一定的大小规则进行排序。C++是一种高级编程语言,非常适合用来实现这种算法。

冒泡排序算法的基本思想是对于长度为n的序列,从头开始每一次比较相邻两个元素的大小,如果满足特定的条件,交换它们的位置,直到所有的元素都排完序为止。具体的实现方法是采用双重循环,第一重循环控制排序的轮数,第二重循环控制比较和交换的次数。

首先,我们需要定义一个要排序的数组。在C++中,可以使用数组来存储数据,数组有一个固定的长度,可以根据需要对其进行初始化。以下是定义一个长度为5的数组的示例代码。


int arr[5] = 2;

然后,我们可以使用嵌套循环实现冒泡排序算法。第一层循环用于控制排序的轮数(即比较的次数),第二层循环用于进行相邻元素的比较。具体的代码如下所示。


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

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

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

      int tmp = arr[j];

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

      arr[j+1] = tmp;

    }

  }

}

在这段代码中,n代表数组的长度,i和j分别表示控制轮数和比较相邻元素的下标。如果第j个元素比第j+1个元素大,则交换它们的位置。这个过程会不断重复,直到所有的元素都被排好序。

最后,我们可以使用for循环输出排好序的数组。完整的代码如下所示。


#include<iostream>

using namespace std;

int main(){

  int arr[5] = 4;

  int n = 5;

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

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

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

        int tmp = arr[j];

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

        arr[j+1] = tmp;

      }

    }

  }

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

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

  }

  return 0;

}

通过以上代码,我们可以看到,C++语言可以非常方便地实现冒泡排序算法。它是一种简单,易于理解和实现的排序算法,适用于排序元素数量较少的列表。

  
  

评论区

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