编辑代码

#include <iostream>
#include <vector>
using namespace std;

void insertion_sort(vector<int>& arr) {
    int n = arr.size();
    for (int i = 1; i < n; ++i) {
        int key = arr[i];
        int j = i - 1;
        while (j >= 0 && key < arr[j]) {
            arr[j + 1] = arr[j];
            j--;
        }
        arr[j + 1] = key;
    }
}

int main() {
    vector<int> arr1 = {1, 2, 3, 4, 5};
    insertion_sort(arr1);
    for (int num : arr1) {
        cout << num << " ";
    }
    cout << endl;

    vector<int> arr2 = {5, 4, 3, 2, 1};
    insertion_sort(arr2);
    for (int num : arr2) {
        cout << num << " ";
    }
    cout << endl;

    vector<int> arr3 = {2, 3, 1, 5, 4, 2};
    insertion_sort(arr3);
    for (int num : arr3) {
        cout << num << " ";
    }
    cout << endl;

    vector<int> arr4 = {1};
    insertion_sort(arr4);
    for (int num : arr4) {
        cout << num << " ";
    }
    cout << endl;

    return 0;
}