编辑代码

#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;
            }
        }
    }
}

// 选择排序
void selectionSort(int arr[], int n) {
    for (int i = 0; i < n - 1; i++) {
        int minIndex = i;
        for (int j = i + 1; j < n; j++) {
            if (arr[j] < arr[minIndex]) {
                minIndex = j;
            }
        }
        // 交换元素
        int temp = arr[i];
        arr[i] = arr[minIndex];
        arr[minIndex] = temp;
    }
}

int main() {
    int arr1[] = {64, 34, 25, 12, 22, 11, 90};
    int n1 = sizeof(arr1) / sizeof(arr1[0]);

    cout << "冒泡排序前数组1:";
    for (int i = 0; i < n1; i++) {
        cout << arr1[i] << " ";
    }
    bubbleSort(arr1, n1);
    cout << "\n冒泡排序后数组1:";
    for (int i = 0; i < n1; i++) {
        cout << arr1[i] << " ";
    }

    int arr2[] = {12, 45, 6, 78, 23, 56};
    int n2 = sizeof(arr2) / sizeof(arr2[0]);

    cout << "\n\n选择排序前数组2:";
    for (int i = 0; i < n2; i++) {
        cout << arr2[i] << " ";
    }
    selectionSort(arr2, n2);
    cout << "\n选择排序后数组2:";
    for (int i = 0; i < n2; i++) {
        cout << arr2[i] << " ";
    }

    int arr3[] = {5, 4, 3, 2, 1};
    int n3 = sizeof(arr3) / sizeof(arr3[0]);

    cout << "\n\n冒泡排序前数组3:";
    for (int i = 0; i < n3; i++) {
        cout << arr3[i] << " ";
    }
    bubbleSort(arr3, n3);
    cout << "\n冒泡排序后数组3:";
    for (int i = 0; i < n3; i++) {
        cout << arr3[i] << " ";
    }

    return 0;
}