C++ 冒泡排序算法实现 - 代码示例与解析
C++ 冒泡排序算法实现 - 代码示例与解析
冒泡排序是一种简单的排序算法,它通过比较相邻元素并交换位置,逐步将最大的元素“冒泡”到数组末尾。 以下是使用 C++ 实现冒泡排序算法的代码示例:
#include <iostream>
using namespace std;
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[] = {5, 2, 9, 1, 5, 6};
int n = sizeof(arr) / sizeof(arr[0]);
bubbleSort(arr, n);
cout << 'Sorted array: ';
for(int i = 0; i < n; i++) {
cout << arr[i] << ' ';
}
return 0;
}
代码解析:
bubbleSort(int arr[], int n)函数接受一个整型数组arr和数组大小n作为参数。- 外层循环
for(int i = 0; i < n - 1; i++)控制排序趟数,每一趟将数组中最大的元素“冒泡”到末尾。 - 内层循环
for(int j = 0; j < n - i - 1; j++)遍历数组元素,比较相邻元素并交换位置,将最大的元素移动到末尾。 if(arr[j] > arr[j+1])判断相邻元素的大小关系,如果前一个元素大于后一个元素,则交换位置。main函数中创建了一个示例数组,调用bubbleSort函数进行排序,并输出排序后的数组。
输出结果:
Sorted array: 1 2 5 5 6 9
总结:
冒泡排序是一种简单易懂的排序算法,虽然时间复杂度较高,但在小规模数据排序中仍然适用。 该代码示例演示了用 C++ 实现冒泡排序算法的步骤和细节,并提供了示例数据和输出结果,方便读者理解和学习。
原文地址: https://www.cveoy.top/t/topic/mEX5 著作权归作者所有。请勿转载和采集!