Red de conocimiento informático - Conocimiento informático - El proceso de clasificación de Hill sorting

El proceso de clasificación de Hill sorting

La clasificación Hill es una clasificación por inserción, que divide toda la secuencia ordenada en varias subsecuencias pequeñas para la clasificación por inserción.

El proceso de clasificación: primero tome un entero positivo d1

Resultados de tres pasadas

04 13 27 38 49 49 55 65 76 97 Implementación del algoritmo de clasificación de Shell:

1. Descripción del algoritmo sin publicaciones de monitoreo

void ShellPass(SeqList R, int d)

{//Una pasada de clasificación en clasificación Hill, d es el incremento actual

for(i=d+1;i<=n;i++) //Convierte R[d+1. . n] Inserte el área ordenada actual de cada grupo respectivamente

if(R[ i ].key

R[0]=R [i ];j=i-d; //R[0] es solo una unidad de almacenamiento temporal, no un centinela

do {//Encuentra la posición de inserción de R

R[ j+d]=R [j]; //Retroceder el registro

j=j-d; //Buscar el registro anterior

} while(j>0&&R[0]. key

R[j+d]=R[0]; //Inserta R en la posición correcta

} //endif