A classificação por inserção direta refere-se à inserção de elementos a serem classificados um por um na sequência ordenada anteriormente classificada até que todos os elementos tenham sido inseridos.
1) Primeiro, suponha que o primeiro elemento foi classificado.
2) Em seguida, retire o próximo elemento que ainda precisa ser classificado, ou seja, o próximo elemento após o elemento classificado, retire o próximo elemento, defina-o como o elemento a ser inserido e digitalize de trás para frente no classificado sequência de elementos. Se o elemento (classificado) for maior que o elemento a ser inserido, mova o elemento para a próxima posição.
3) Repita a etapa 2 até encontrar uma posição onde o elemento classificado seja menor ou igual ao elemento a ser classificado e insira o elemento.
4) Repita as etapas 2 e 3 para concluir a classificação.
Por exemplo:
importjava.util.Arrays;publicclassMain{publicstaticvoidmain(Stringargs[]){int[]arr=newint[]{17,62,39,52,8,24};for(inti=1;i<arr.length;i++ ){//Iniciar a comparação a partir do segundo elemento inttemp=arr[i];//Registrar o elemento atual for(intj=i-1;j>=0;j--){//Iniciar a comparação a partir do último elemento if (arr[j]>temp){//Se for maior que o elemento atual arr[j+1]=arr[j];//Mover todos os elementos daqui para frente uma posição arr[j]=temp; //Insira o elemento atual em arr[j]}}}for(inti=0;i<arr.length;i++){System.out.print(arr[i]+);}}}
Os resultados da execução são os seguintes:
81724395262