Experimente Baidu Wenxinyiyan AI modelo de generación inserción clasificación C++ versión

El siguiente es el código de clasificación de inserción implementado en C++:

#include <iostream>
#include <vector>

using namespace std;

void insertionSort(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 && arr[j] > key) {
    
    
            arr[j + 1] = arr[j];
            j--;
        }
        arr[j + 1] = key;
    }
}

int main() {
    
    
    vector<int> arr = {
    
    5, 3, 8, 6, 2, 7, 1, 4};
    insertionSort(arr);
    for (int i = 0; i < arr.size(); i++) {
    
    
        cout << arr[i] << " ";
    }
    cout << endl;
    return 0;
}
  • En este código, la función injectionSort usa un bucle para recorrer todo el arreglo y, para cada posición, inserta el elemento en esa posición en el subarreglo ordenado anterior. Específicamente, primero guarda el elemento en la posición actual en la variable clave y luego recorre la posición anterior en la posición actual hacia adelante, y si encuentra que el elemento en la posición anterior es más grande que la clave, mueve el elemento en la posición anterior a la derecha Un bit hasta que se encuentre una posición no más grande que la llave, y luego la llave se inserta detrás de la posición. Finalmente, la función principal define un vector entero arr y llama a la función de ordenación por inserción para ordenarlo y luego genera los resultados ordenados.
1 2 3 4 5 6 7 8

Herramienta de desarrollo: Baidu Wenxin Yiyan
CLion

Supongo que te gusta

Origin blog.csdn.net/m0_38127487/article/details/132201971
Recomendado
Clasificación