La clasificación por inserción directa se refiere a insertar elementos que se ordenarán uno por uno en la secuencia ordenada previamente ordenada hasta que se hayan insertado todos los elementos. Los pasos principales son los siguientes:
1) Primero suponga que el primer elemento ha sido ordenado.
2) Luego saque el siguiente elemento que aún necesita ordenarse, es decir, el siguiente elemento después del elemento ordenado, saque el siguiente elemento, configúrelo como el elemento a insertar y escanee de atrás hacia adelante en el orden. secuencia de elementos. Si el elemento (ordenado) es más grande que el elemento que se va a insertar, mueva el elemento a la siguiente posición.
3) Repita el paso 2 hasta encontrar una posición donde el elemento ordenado sea menor o igual que el elemento a ordenar e inserte el elemento.
4) Repita los pasos 2 y 3 para completar la clasificación.
Por ejemplo:
importjava.util.Arrays;publicclassMain{publicstaticvoidmain(Stringargs[]){int[]arr=newint[]{17,62,39,52,8,24};for(inti=1;i<arr.length;i++ ){//Comparar a partir del segundo elemento inttemp=arr[i];//Registrar el elemento actual para(i ntj=i-1;j>=0;j--){//Comparar comenzando desde el último elemento if(arr[j]>temp){//Si es más grande que el elemento actual arr[j+1] =arr[ j];//Mover todos los elementos desde aquí hacia adelante una posición arr[j]=temp;//Inserta el elemento actual en arr[j]}}}for(inti=0;i<arr.length;i++){System.out.print(arr[i]+); }}
Los resultados de ejecución son los siguientes:
81724395262