Algoritmo de ordenação: Inserction Sort

Publicado por mfs (última atualização em 13/04/2010)

[ Hits: 5.337 ]

Download inserction_sort.c




Este algoritmo percorre o vetor da direita para a esquerda, e a medida que avança vai deixando os elementos da esquerda mais ordenados.

Como o Selection Sort, ele também só é eficiente com poucos algarismos.

  



Esconder código-fonte

#include <stdio.h>

void inserction_sort (int vetor[], int max) {
  int i, j, min;
  
  /* Ordena o vetor */
  for (j = 1; j < min; j++) {
    min = vetor[j];
    i = j-1;
    while (i >= 0 && vetor[i] > vetor[j]) {
      vetor [i + 1] = vetor [i];
      i--;
    }
    vetor[i + 1] = min;
  }
  
  /* Imprime o vetor já ordenado*/
  for (i = 0; i < max; i++) {
    printf ("%d ",vetor[i]);
  }
  printf ("\n");
}

main () {
  int max, i;
  
  /* Lê o máximo de algarismos */
  scanf ("%d", &max);
  
  int vetor[max];
  
  /* Lê os algarismos do vetor */
  for (i = 0; i < max; i++) {
    scanf ("%d",&vetor[i]);
  }
  
  selction_sort (vetor, max);
  
}

Scripts recomendados

Ordenação de vetor pelo método Bubblesort

Estatística - Moda e mediana de um vetor

Strcat

Tabuada no terminal

Bubble sort em vetores


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts