21xrx.com
2024-05-20 11:10:07 Monday
登录
文章检索 我的文章 写文章
C++实现冒泡排序算法
2023-07-13 03:12:53 深夜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;

      }

    }

  }

}

以上代码中,我们使用了两层循环。第一层循环是控制循环次数的,每执行一次循环就会确定一个最大的元素。第二层循环是进行比较和交换操作的,每一轮循环都会将一个最大元素放到数组的末尾。

我们在循环过程中用到了一个if判断,这个判断语句的作用是判断相邻两个元素的大小关系,如果顺序不对就进行交换。每次交换操作都会使得当前循环的最大元素移动到数组的末尾。

在上述代码中,参数arr是待排序的数组,n是数组的长度。我们可以在main函数中调用这个函数来进行排序操作,代码如下:


int main() {

  int arr[10] = 6;

  bubbleSort(arr, 10);

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

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

  }

  return 0;

}

在这个例子中,我们创建了一个包含10个元素的数组,并将其传入bubbleSort函数进行排序。最后,我们输出排序后的数组,结果是0 1 2 3 4 5 6 7 8 9。

总结一下,冒泡排序算法是一种常见的排序算法,它的实现非常简单,只需要掌握两层循环和交换操作即可。在C++中,我们可以通过使用上述代码来实现冒泡排序算法。如果你对排序算法感兴趣,可以尝试实现其他的排序算法并比较它们的效率。

  
  

评论区

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