冒泡排序算法c++(冒泡排序算法Python)

冒泡排序算法C++实现

冒泡排序是一种简单的排序算法,通过多次遍历数组,每次比较相邻的两个元素,并交换它们的位置,直到整个数组有序为止。下面我们将通过C++实现冒泡排序算法。

## 算法原理

冒泡排序算法的原理很简单,它比较相邻的两个元素,如果它们的顺序错误就交换它们的位置。每一轮遍历都会把当前未排序序列的最大值(最小值)冒泡到最后一位,直到整个数组有序。

## 代码实现

```cpp

#include

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]) {

swap(arr[j], arr[j+1]);

}

}

}

int main() {

int arr[] = {64, 34, 25, 12, 22, 11, 90};

int n = sizeof(arr)/sizeof(arr[0]);

cout << "Original array: ";

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

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

}

cout << endl;

bubbleSort(arr, n);

cout << "Sorted array: ";

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

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

}

cout << endl;

return 0;

```

## 测试结果

经过冒泡排序算法的处理,原始数组{64, 34, 25, 12, 22, 11, 90}按照从小到大的顺序排列为{11, 12, 22, 25, 34, 64, 90}。

冒泡排序算法虽然简单粗暴,但时间复杂度为O(n^2),对于大规模数据排序效率较低。因此在实际开发中,更常用高效的排序算法如快速排序、归并排序等。

标签列表