Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouLuiz Henrique Fontes Aires Alterado mais de 8 anos atrás
1
Ordenação Professor Paulo Gomide 27 de outubro de 2015
2
Sumário Ordenação: – Considerações iniciais e definições; – Métodos de ordenação: Inserção; Mergesort. – Comparação entre os métodos apresentados.
3
Considerações Iniciais Objetivos : – Definir e apresentar o problema da ordenação; – Introduzir os conceitos de métodos de ordenação simples e eficiente; – Apresentar e analisar um método simples e um método eficiente, comparando os mesmos.
4
Definição e Objetivos da Ordenação
5
Algumas Aplicações de Ordenação Testar se todos os elementos de um conjunto são distintos; Remover duplicações de elementos de um conjunto; Encontrar o k-ésimo menor item de um conjunto; Interseção e união de conjuntos; Busca eficiente.
6
Métodos para Ordenação
7
Ordernação por Inserção
9
Ordenação por Inserção: Análise
10
Divisão e Conquista Deseja-se revolver um problema com uma entrada grande; Para facilitar a resolução do problema, a entrada é dividida em pedaços menores (DIVISÃO); Cada pedaço da entrada é então tratado separadamente (CONQUISTA); Ao final, os resultados parciais são combinados para gerar o resultado final procurado.
11
Divisão e Conquista Técnica consistem em 3 passos: 1.Divisão: Dividir o problema original em subproblemas menores; 2.Conquista: Resolver cada subproblema independentemente (em geral, recursivamente); 3.Combinação: Combinar as soluções encontradas, compondo uma solução para o problema original.
12
Mergesort: Exemplo A execução do Mergesort pode ser facilmente descrita por uma árvore binária, onde: -Cada nó representa uma chamada recursiva do Mergesort; -O nó raiz é a chamada inicial; -Os nós folhas são vetores de 1 ou 2 números (casos bases).
13
Mergesort: Exemplo
23
Mergesort: Análise A altura h da árvore de execução é O(log n); A quantidade de operações em cada nível da árvore é assintoticamente igual a O(n); Logo: algoritmo é O(n log n), em todos os casos.
24
Mergesort: Análise Complexidade: O(n log n) Vantagens – O(n log n) em todos os casos; – Indicado para aplicações que tem restrição crítica de tempo; – Fácil implementação. Desvantagens – Utiliza memória auxiliar – O(n); – Na prática pode ser mais lento que o Quicksort no caso médio.
25
Referências Knuth, The Art of Computer Programming, Vol. 3: Sorting and Searching, 2nd Ed, MA: Addison-Wesley, 1998; Aulas do professor Antonio Alfredo Ferreira Loureiro, DCC/UFMG, Algoritmos e Estruturas de Dados II, 2007; Aulas do professor Túlio Toffolo, UFOP, Algoritmos e Estruturas de Dados I, 2011; Aulas do professor Tim Roughgarden, Stanford University, Design and Analysis of Algorithms I, 2012.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.