Estrutura de Dados          Ordenação Por Inserção           Funcionamento           Implementação
O que é?Este é o método de ordenação mais rápido entre os métodos básicos.Ordena um vetor da esquerda para a direita, po...
FuncionamentoPercorre um vetor, sempre a partir do primeiro índice desordenado (inicialmente o 2º elemento), e em seguida...
Implementaçãovoid insercao(int v[], int tam){    int j, i, temp;    for (i=1;i<tam;i++)    {               //guarda o elem...
EficiênciaMelhor caso: quando os elementos já estão ordenados.Caso médio: quando parte dos elementos já está ordenada.P...
Vantagens                         Desvantagens     Fácil Implementação          Grande número de movimentações            ...
Próximos SlideShares
Carregando em…5
×

Ordenação por inserção

5.361 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
5.361
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
70
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Ordenação por inserção

  1. 1. Estrutura de Dados Ordenação Por Inserção  Funcionamento  Implementação
  2. 2. O que é?Este é o método de ordenação mais rápido entre os métodos básicos.Ordena um vetor da esquerda para a direita, por ordem crescente ou decrescente.À medida que o vetor vai sendo percorrido ele deixa seus elementos à esquerda ordenados.
  3. 3. FuncionamentoPercorre um vetor, sempre a partir do primeiro índice desordenado (inicialmente o 2º elemento), e em seguida procura inseri-lo na posição correta, comparando-o com o seu(s) anterior(s) e trocando-os de lugar enquanto ele for menor que seu(s) precedente(s).
  4. 4. Implementaçãovoid insercao(int v[], int tam){ int j, i, temp; for (i=1;i<tam;i++) { //guarda o elemento que esta verificando temp = v[i]; //verificando os elementos anteriores a posicao i for(j= i-1;v[j]>temp && j>=0;j--) { v[j+1] = v[j]; } //insere o elemento na posicao correta (ordenada) ate i. v[j+1] = temp; }}
  5. 5. EficiênciaMelhor caso: quando os elementos já estão ordenados.Caso médio: quando parte dos elementos já está ordenada.Pior caso: quando os elementos estão ordenados em ordem inversa.
  6. 6. Vantagens Desvantagens Fácil Implementação Grande número de movimentações Não é eficiente quando o vetor está Algoritmo Estável ordenado inversamenteEficiente com vetores de poucos Não é recomendado para vetores elementos com muitos elementos

×