ciencias da computacao
Disciplina: Estruturas de Dados
TRABALHO FINAL
Algoritmos de ordenação (conceito e código exemplo):
Pesquise sobre algoritmos de ordenação (conceito e código exemplo):
Métodos simples e Métodos sofisticados
Trabalho final em dupla, para obtenção de nota na Disciplina Estruturas de Dados Com orientação do professor Marcelo Loiola.
Teresina-2014
Pesquise sobre algoritmos de ordenação (conceito e código exemplo):
Métodos simples
Insertion sort: ou ordenação por inserção, é um algoritmo simples e eficiente quando aplicado a um pequeno número de elementos pouco desorganizado. Em termos gerais, ele percorre um vetor de elementos da esquerda para a direita e a medida que avança vai deixando os elementos mais ordenados para a esquerda.
Exemplo:
Void insertionSort ( int v[ ], int n[ ] ) {
Int i, j, chave;
For (j = i; j < n; j++) {
Chave = v [ j ];
i=j
– i; while(i >= 0 && v[ i ] > chave) { v [i +1] = v[ i ];
i - -;
}
V[i+1] = chave;
}
}
Selection sort: ou ordenação por seleção, é um algoritmo de ordenação que procura passar sempre o menor valor do vetor para a primeira posição (ou o maior dependendo da ordem requerida), depois o segundo menor valor para a segunda posição, e assim e feito sucessivamente com os (n-1) elementos restantes, até os últimos dois elementos.
Exemplo:
Void selection_sort (int num [ ], int tam) {
Int i, j, min; for (i = 0; i < (tam-1); i++) { min = i; for (j = (i+1); j < tam; j++) { min = j;
}
}
If (i ! = min) [
Int swap = num[ i ]; num[ i ] = num[min]; num[min] = swap;
}
}
}
Bubble sort: ou ordenação por flutuação (literalmente ”por bolha”), é um dos mais simples algoritmos de ordenação. A ideia é percorrer o vetor diversas vezes, a cada passagem fazendo flutuar para o topo o maior elemento da sequência.
Exemplo:
Void bubble (int v[ ], int tam)
{
Int i, aux, trocou;
do {
tam - -; trocou = 0; // usado para otimizar o