C++冒泡排序
作者:野牛程序员:2023-09-04 14:52:25 C++阅读 2593
冒泡排序是一种简单的排序算法,它的原理很容易理解。冒泡排序的目标是将一个数组中的元素按升序排列。下面是冒泡排序的原理:
冒泡排序的核心思想是多次遍历数组,每次比较相邻的两个元素,如果它们的顺序不正确(比如,前面的元素比后面的大),就交换它们的位置。这样,每次遍历都会将最大的元素“冒泡”到数组的末尾。这个过程重复进行,直到整个数组都排好序为止。
接下来,让我们看一下如何用C++实现冒泡排序的程序:
#include <iostream> 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; } } } } int main() { int arr[] = {64, 25, 12, 22, 11}; int n = sizeof(arr) / sizeof(arr[0]); std::cout << "排序前的数组:"; for (int i = 0; i < n; ++i) { std::cout << arr[i] << " "; } std::cout << std::endl; bubbleSort(arr, n); std::cout << "排序后的数组:"; for (int i = 0; i < n; ++i) { std::cout << arr[i] << " "; } std::cout << std::endl; return 0; }
这个程序首先定义了一个名为bubbleSort
的函数,它接受一个整数数组和数组的大小作为参数,然后使用嵌套的循环来实现冒泡排序。主函数中创建了一个整数数组,调用bubbleSort
函数进行排序,然后打印排序前和排序后的数组。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
