Colección de citas famosas - Slogan de motivación - Pasos algorítmicos de ordenación por inserción en lenguaje C

Pasos algorítmicos de ordenación por inserción en lenguaje C

Descripción del algoritmo

En general, la ordenación por inserción se implementa in situ en una matriz. El algoritmo específico se describe a continuación:

A partir del primer elemento, se puede considerar que el elemento ha sido ordenado.

Saque el siguiente elemento y escanee de atrás hacia adelante según el orden de los elementos.

Si el elemento (ordenado) es más grande que el nuevo elemento, mueva el elemento a la siguiente posición.

Repita el paso 3 hasta encontrar una posición donde el elemento ordenado sea menor o igual que el nuevo elemento.

Después de insertar el nuevo elemento en esta posición.

Repita los pasos 2~5.

Si el costo de la operación de comparación es mayor que el costo de la operación de intercambio, puede utilizar el método de búsqueda binaria para reducir el número de operaciones de comparación. Este algoritmo puede verse como una variante de la ordenación por inserción, llamada ordenación de búsqueda binaria.

Código de muestra

void insertion_sort(int array[], int first, int last)

{

int i, j;

Temperatura interna;

for(I = primero+1;i<=last;i++)

{

temp = matriz[ I];

j = I-1;

mientras((j>= primero)&&(array[j]>temperatura) )

{

matriz[j+1]= matriz[j];

j-;

}

matriz[j+ 1]= temperatura;

}

}