A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Método de Ordenação: InsertionSort

Apresentações semelhantes


Apresentação em tema: "Método de Ordenação: InsertionSort"— Transcrição da apresentação:

1 Método de Ordenação: InsertionSort
Prof(o): Alexandre Parra

2 Principais Métodos Classificação por Trocas Classificação por Seleção
Classificação por Inserção

3 Classificação por Inserção
Caracteriza-se por percorrer o conjunto de elementos da esquerda para a direita e à medida que avança vai deixando os elementos mais à esquerda ordenados. Principais Algoritmos: InsertionSort (Ordenação por Inserção) ShellSort

4 InsertionSort (Ordem Crescente)
Princípio de classificação (sobre n elementos) A partir do 2º elemento do conjunto de dados: 1) Buscar onde o elemento deve ficar no sub-vetor a esquerda de modo que o sub-vetor fique ordenado. (Obs: Não é a posição definitiva); 2) A busca citada acima pode ser sequencial ou binária. Após ordenar o sub-vetor a esquerda, avançar UMA posição no sub-vetor a direita (não ordenado) e repetir o passo anterior; 3) O processo de ordenação termina quando todos os elementos a partir do 2º elemento forem visitados e inseridos ordenadamente no sub-vetor à esquerda.

5 Exercício Suponha que se deseja classificar crescentemente o vetor abaixo utilizando o método InsertionSort: Simule as iterações necessárias para a classificação.

6 Exemplo (ordenação crescente)
Iteração Vetor INICIAL Parcialmente ordenado até a posição 1ª ª posição 2ª ª posição 3ª ª posição 4ª ª posição 5ª ª posição 6ª ª posição 7ª ª posição 8ª ª posição (Vetor FINAL)

7 InsertionSort (Seqüencial) - Análise de Desempenho (1)
Pior caso: Quando o vetor se encontra na ordem inversa a desejada. O(n2) Melhor caso: Quando o vetor se encontra ordenado. Somente n – 1 comparações. O(n) Caso Médio: Os demais casos exceto os casos do pior e melhor caso. O(n2)

8 InsertionSort (Busca Binária) – Análise de Desempenho (2)
Pior caso: Quando o vetor está ordenado ou desordenado. O(n2) Melhor caso: Quando o local onde será inserido o elemento no sub-vetor ordenado é “próximo do centro”. O(n) Caso Médio: Os demais casos exceto os casos do pior e melhor caso. O(n2)

9 Site sobre ordenação BubbleSort QuickSort SelectionSort
BubbleSort QuickSort SelectionSort InsertionSort (Busca Seqüencial) MergeSort

10 Exercício 1) Aplicar o método InsertionSort (Busca Binária e Seqüencial) para classificar o vetor [ ] na ordem crescente. 2) Quantas iterações são necessárias para ordenar o vetor ? 3) Qual a complexidade do método SelectionSort nos casos: melhor, pior e caso médio ? 4) Classifique o método InsertionSort quanto: - A Estabilidade. Justifique sua resposta. - A Localidade. Justifique sua resposta.

11 InsertSort (Busca Binária) – Análise de Desempenho (3)
Análise do Desempenho quanto a localização o número de comparações para localizar a posição de um elemento, por pesquisa binária, em uma tabela de k entradas é: para k de 1 até n - 1, o total de comparações para localizar as n - 1 posições das chaves a serem inseridas: n-1  log 2 i = log log log log 2 (n - 1 ) i=1 = log 2 (1*2*3*...*n - 1) = log 2 ( n - 1 ) ! log2 k

12 Análise de Complexidade no Gráfico
f(n) = n2 f(n) = log2(n!) f(n) = n


Carregar ppt "Método de Ordenação: InsertionSort"

Apresentações semelhantes


Anúncios Google