阅读量:2
以下是一个用C++实现冒泡排序的例子:
#include <iostream> using namespace std; void bubbleSort(int arr[], int size) { for (int i = 0; i < size - 1; i++) { for (int j = 0; j < size - 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, 34, 25, 12, 22, 11, 90}; int size = sizeof(arr) / sizeof(arr[0]); cout << "原始数组为: "; for (int i = 0; i < size; i++) { cout << arr[i] << " "; } cout << endl; bubbleSort(arr, size); cout << "排序后的数组为: "; for (int i = 0; i < size; i++) { cout << arr[i] << " "; } cout << endl; return 0; }
输出结果:
原始数组为: 64 34 25 12 22 11 90 排序后的数组为: 11 12 22 25 34 64 90
这个例子中,我们首先定义了一个名为bubbleSort
的函数,该函数接受一个整数数组和数组的大小作为参数。在函数内部,我们使用两个嵌套的循环来遍历数组,并比较相邻的元素。如果当前元素比下一个元素大,则交换它们的位置。通过这样的比较和交换,最大的元素会“冒泡”到数组的末尾。然后,我们在main
函数中声明了一个数组,并调用bubbleSort
函数对其进行排序。最后,我们输出排序后的数组。