1. Conceito de algoritmo.
Cada vez que o primeiro elemento é retirado da lista não ordenada e inserido na posição apropriada da lista ordenada, para que a lista ordenada permaneça ordenada.
2. Pensamento algorítmico.
Suponha que os registros a serem classificados estejam armazenados no array R[1..n]. Inicialmente, R[1] forma uma área ordenada, e a área não ordenada é R[2..n]. De i=2 até i=n, R[i] é inserido na área ordenada atual R[1..i-1] em sequência, gerando uma área ordenada contendo n registros.
public static void insertSort(int[] array) { int len = array.length; for (int i = 1; i < len; i++) { for (int j = i; j > 0; j--) { if ( array[j] < array[j - 1]) { Sort.swap(array, j, j - 1);//Troca j e j-1 } else break;
Diagrama de classificação de inserção:
O texto acima é todo o conteúdo compartilhado com você neste artigo. Espero que seja útil para todos na compreensão do algoritmo de classificação por inserção.