Heapsort ordenação por árvore de seleção
|
|
- Brenda Gonçalves Mota
- 5 Há anos
- Visualizações:
Transcrição
1 UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Heapsort ordenação por árvore de seleção Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa
2 Prof. Yandre Maldonado - 2 Métodos de ordenação interna: Simples: complexidade média O(n 2 ); Eficientes: complexidade média O(n log n); Simples: Inserção; Seleção; Troca (bolha); Eficientes: Shell (ou shellsort); Quick (ou quicksort); Heap (ou heapsort).
3 Prof. Yandre Maldonado - 3 Método proposto por Floyd e Williams, em 1964; É considerado um método de ordenação de bom desempenho; O desempenho no pior caso é semelhante ao caso médio; É considerado uma variação do método de ordenação por seleção; Faz um uso comportado da memória;
4 Prof. Yandre Maldonado - 4 O método consiste em: Transformar a seqüência inicial em uma seqüência que esteja associada à uma estrutura do tipo heap; Heap é uma árvore binária em que: A diferença máxima de altura entre os nós folha é de um nível; Os nós do nível mais profundo são preenchidos da esquerda para a direita; Todo nó deve armazenar uma chave maior do que as dos seus filhos;
5 Prof. Yandre Maldonado - 5 Um heap pode ser representado em um vetor com índices c 1, c 2,..., c n da seguinte forma: Para toda chave c i, com i entre 1 e n div 2: c 1 é a raiz da árvore; c 2i é a raiz da sub-árvore esquerda de c i e c 2i+1 é a raiz da sub-árvore direita de c i ;
6 Para um vetor com índices de 1 a 7 haveria o seguinte heap associado: Prof. Yandre Maldonado - 6 c 1 c 2 c 3 c 4 c 5 c 6 c 7 C 1 C 2 C 3 C 4 C 5 C 6 C 7
7 A seqüência de chaves descrita a seguir será transformada em um heap: Prof. Yandre Maldonado - 7 ` Para que a estrutura seja um heap, cada nó deve ter chave maior do que as chaves de seus filhos.
8 A transformação começa a partir do nó que ocupa a posição n div 2 do vetor, neste caso a posição de índice 3: Prof. Yandre Maldonado - 8 ` Como esta subárvore respeita o critério para formação do heap, volta-se para o nó associado à posição anterior do vetor.
9 Os próximos nós serão obtidos decrementando-se o índice no vetor até atingir o índice 1: Prof. Yandre Maldonado - 9 ` Neste ponto, percebe-se que a chave 5 é menor do que a dos seus filhos, então troca-se as posições desta chave com a maior chave associada aos seus filhos.
10 Os próximos nós serão obtidos decrementando-se o índice no vetor até atingir o índice 1: Prof. Yandre Maldonado - 10 ` Agora esta subárvore respeita o critério para formação do heap. Com isto, volta-se para o nó associado à posição anterior do vetor.
11 O índice 1 finalmente foi atingido: Prof. Yandre Maldonado - 11 ` Neste ponto, percebe-se que a chave 19 é menor do que a de um dos seus filhos, então troca-se a posição destas chaves.
12 Agora, percebe-se que esta última troca trouxe um novo problema ao heap como um todo : Prof. Yandre Maldonado - 12 ` Para corrigir este problema, percorre-se agora no sentido inverso as posições, de 1 até n div 2.
13 Para corrigir o problema, percorre-se agora no sentido inverso as posições, de 1 até n div 2: Prof. Yandre Maldonado - 13 ` Esta sub-árvore respeita o critério para formação do heap. Com isto, passa-se para a próxima posição do vetor.
14 Para corrigir o problema, percorre-se agora no sentido inverso as posições, de 1 até n div 2: Prof. Yandre Maldonado - 14 ` Esta sub-árvore respeita o critério para formação do heap. Com isto, passa-se para a próxima posição do vetor.
15 Para corrigir o problema, percorre-se agora no sentido inverso as posições, de 1 até n div 2: Prof. Yandre Maldonado - 15 ` Neste ponto, percebe-se que a chave 19 é menor do que a de um dos seus filhos, então troca-se a posição destas chaves.
16 Para corrigir o problema, percorre-se agora no sentido inverso as posições, de 1 até n div 2: Prof. Yandre Maldonado - 16 ` A varredura do índice 1 até n div 2 deve ser repetida até que nenhuma nova troca ocorra. Assim, o heap estará definitivamente formado.
17 Formado o heap, sabe-se que a maior de todas as chaves está posicionada na primeira posição do vetor: Prof. Yandre Maldonado - 17 ` Neste caso, nenhuma nova troca acontece, portanto o heap já está formado.
18 Com isto, troca-se a posição da primeira chave com a última no vetor: Prof. Yandre Maldonado - 18 ` Sabendo-se que a posição definitiva da maior de todas as chaves será a última do vetor, faz-se a troca entre a chave do primeiro e a do último índice.
19 Prof. Yandre Maldonado - 19 Entende-se que a última chave já encontrou sua posição definitiva e as demais passam a formar um novo heap, de tamanho menor: ` Novo heap O heap agora será formado pelas chaves que estão nas posições entre os índices 1 e 6.
20 Prof. Yandre Maldonado - 20 Para restabelecer o heap, percorre-se as chaves no vetor a partir da posição 1 até a posição n div 2 * percorrendo apenas os índices que correspondam a elementos eventualmente trocados: ` Neste ponto, percebe-se que a chave 19 é menor do que a de um dos seus filhos, então troca-se a posição destas chaves. * Sem alterar chaves das células sombreadas, que já se encontram em suas posições definitivas.
21 Prof. Yandre Maldonado - 21 Para restabelecer o heap, percorre-se as chaves no vetor a partir da posição 1 até a posição n div 2 * percorrendo apenas os índices que correspondam a elementos eventualmente trocados: * Sem alterar chaves das células sombreadas, que já se encontram em suas posições definitivas.
22 Prof. Yandre Maldonado - 22 Para restabelecer o heap, percorre-se as chaves no vetor a partir da posição 1 até a posição n div 2 * percorrendo apenas os índices que correspondam a elementos eventualmente trocados: Esta sub-árvore respeita o critério para formação do heap, já que a posição de índice 7 do vetor não é mais parte do heap. * Sem alterar chaves das células sombreadas, que já se encontram em suas posições definitivas.
23 Atingido o índice n div 2, o heap está finalmente restabelecido: Prof. Yandre Maldonado Restabelecido o heap, a chave que ocupa a posição de índice 1 pode ser trocada com a que está no último índice associado ao heap.
24 Agora, mais uma chave encontrou sua posição definitiva e as demais passam a formar um novo heap, de tamanho menor: Prof. Yandre Maldonado Novo heap O heap agora será formado pelas chaves que estão nas posições entre os índices 1 e 5.
25 Prof. Yandre Maldonado - 25 Para restabelecer o heap, percorre-se as chaves no vetor a partir da posição 1 até a posição n div 2 * percorrendo apenas os índices que correspondam a elementos eventualmente trocados: Neste ponto, percebe-se que a chave 12 é menor do que a de um dos seus filhos, então troca-se a posição destas chaves. * Sendo n igual a 5 neste momento. As posições sombreadas não podem mais ser alteradas.
26 Prof. Yandre Maldonado - 26 Para restabelecer o heap, percorre-se as chaves no vetor a partir da posição 1 até a posição n div 2 * percorrendo apenas os índices que correspondam a elementos eventualmente trocados: * Sendo n igual a 5 neste momento. As posições sombreadas não podem mais ser alteradas.
27 Prof. Yandre Maldonado - 27 Para restabelecer o heap, percorre-se as chaves no vetor a partir da posição 1 até a posição n div 2 * percorrendo apenas os índices que correspondam a elementos eventualmente trocados: O índice 2 era o último a ser percorrido nesta variação, com isto, o heap está formado e a chave que ocupa o índice 1 pode ser trocada com aquela que ocupa a última posição do heap. * Sendo n igual a 5 neste momento. As posições sombreadas não podem mais ser alteradas.
28 Agora, mais uma chave encontrou sua posição definitiva e as demais passam a formar um novo heap, de tamanho menor: Prof. Yandre Maldonado Novo heap O heap agora será formado pelas chaves que estão nas posições entre os índices 1 e 4.
29 Prof. Yandre Maldonado - 29 Para restabelecer o heap, percorre-se as chaves no vetor a partir da posição 1 até a posição n div 2 * percorrendo apenas os índices que correspondam a elementos eventualmente trocados: Neste ponto, percebe-se que a chave 9 é menor do que as suas filhas, então troca-se a posição dela com a da maior das filhas. * Sendo n igual a 4 neste momento. As posições sombreadas não podem mais ser alteradas.
30 Prof. Yandre Maldonado - 30 Para restabelecer o heap, percorre-se as chaves no vetor a partir da posição 1 até a posição n div 2 * percorrendo apenas os índices que correspondam a elementos eventualmente trocados: O índice 2 era o último a ser percorrido nesta variação, com isto, o heap está formado e a chave que ocupa o índice 1 pode ser trocada com aquela que ocupa a última posição do heap. * Sendo n igual a 4 neste momento. As posições sombreadas não podem mais ser alteradas.
31 Prof. Yandre Maldonado - 31 Para restabelecer o heap, percorre-se as chaves no vetor a partir da posição 1 até a posição n div 2 * percorrendo apenas os índices que correspondam a elementos eventualmente trocados: Neste ponto, percebe-se que a chave 5 é menor do que as suas filhas, então troca-se a posição dela com a da maior das filhas. * Sendo n igual a 3 neste momento. As posições sombreadas não podem mais ser alteradas.
32 Prof. Yandre Maldonado - 32 Para restabelecer o heap, percorre-se as chaves no vetor a partir da posição 1 até a posição n div 2 * percorrendo apenas os índices que correspondam a elementos eventualmente trocados: Restabelecido o heap, a chave da posição de índice 1 pode ser trocada com a da posição de índice 3. * Sendo n igual a 3 neste momento. As posições sombreadas não podem mais ser alteradas.
33 Prof. Yandre Maldonado - 33 Para restabelecer o heap, percorre-se as chaves no vetor a partir da posição 1 até a posição n div 2 * percorrendo apenas os índices que correspondam a elementos eventualmente trocados: Esta sub-árvore respeita o critério para formação de um heap. Assim, a chave da posição de índice 1 pode ser trocada com a do índice 2. * Sendo n igual a 2 neste momento. As posições sombreadas não podem mais ser alteradas.
34 Prof. Yandre Maldonado Seqüência ordenada!
35 Prof. Yandre Maldonado - 35 Desempenho do Heapsort: Médio: O (n log n); Pior caso: O (n log n); Boa opção para situações em que é necessário garantir que a ordenação não esteja sujeita a um desempenho desastroso; Não indicado para quantidades pequenas de chaves devido ao custo da reconstrução do heap; Desempenho médio duas vezes inferior ao do Quicksort.
36 Bibliografia Heapsort Prof. Yandre Maldonado - 36 Azeredo, P. A. Métodos de Classificação de Dados e Análise de suas Complexidades. Rio de Janeiro: Editora Campus, 1996; Moraes, Celso Roberto. Estruturas de Dados e Algoritmos. São Paulo: Berkeley Brasil, 2001; Wirth, N. Algoritmos e Estruturas de Dados. Rio de Janeiro: LTC, 1999; Ziviani, N. Projeto de Algoritmos. São Paulo: Pioneira Thomson Learning, 2002.
Heapsort ordenação por árvore de seleção
UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA ordenação por árvore de seleção Prof. Yandre Maldonado - Prof. Yandre Maldonado e Gomes da Costa Prof. Yandre Maldonado - Métodos de ordenação
Leia maisO PROFESSOR ADVERTE: SLIDES NÃO DEVEM SER UTILIZADOS COMO ÚNICA FONTE PARA ESTUDAR OS CONTEÚDOS MINISTRADOS. PROCURE CONSULTAR, PELO MENOS, A
O PROESSOR ADVERTE: SLDES NÃO DEVEM SER UTLZADOS COMO ÚNCA ONTE PARA ESTUDAR OS CONTEÚDOS MNSTRADOS. PROCURE CONSULTAR, PELO MENOS, A BBLOGRAA NDCADA NO ÚLTMO SLDE. UNVERSDADE ESTADUAL DE MARNGÁ DEPARTAMENTO
Leia maisOrdenação Interna. Prof. Jonas Potros
Ordenação Interna Prof. Jonas Potros Heap A estrutura de dados heap é um objeto arranjo que pode ser visto como uma árvore binária completa. A árvore está completamente preenchida em todos os níveis, exceto
Leia maisINF 1010 Estruturas de Dados Avançadas
INF 1010 Estruturas de Dados Avançadas Listas de Prioridades e Heaps 1 Listas de Prioridades Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade A prioridade associada a um
Leia maisMétodos de Ordenação Parte 3
Estrutura de Dados II Métodos de Ordenação Parte 3 Prof a Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Material baseado nos materiais do Prof. Robson Lins Classificação em Memória Primária
Leia maisMÉTODOS DE ORDENAÇÃO. Introdução à Programação SI2
MÉTODOS DE ORDENAÇÃO Introdução à Programação SI2 2 Conteúdo Conceitos básicos Classificação por troca Classificação por inserção Classificação por seleção 3 Conceitos Básicos Ordenar: processo de rearranjar
Leia maisMétodos de Ordenação. Ordenação Interna. Ordenação Interna
Métodos de rdenação Prof. Yandre Maldonado - rdenação Interna rdenação por Seleção; rdenação por Inserção; rdenação por Troca (Bubblesort); Prof. Yandre Maldonado e Gomes da Costa rdenação Interna Prof.
Leia maisMétodos de Ordenação
Métodos de rdenação Prof. Yandre Maldonado - 1 rdenação Interna rdenação por Seleção; rdenação por Inserção; rdenação por Troca (Bubblesort); Prof. Yandre Maldonado e Gomes da Costa rdenação Interna Prof.
Leia maisHeapSort. Estrutura de Dados II Jairo Francisco de Souza
HeapSort Estrutura de Dados II Jairo Francisco de Souza HeapSort Algoritmo criado por John Williams (1964) Complexidade O(NlogN) no pior e médio caso Mesmo tendo a mesma complexidade no caso médio que
Leia maisMÉTODOS DE CLASSIFICAÇÃO EM MEMÓRIA PRIMÁRIA. George Gomes Cabral
MÉTODOS DE CLASSIFICAÇÃO EM MEMÓRIA PRIMÁRIA George Gomes Cabral MÉTODOS DE CLASSIFICAÇÃO EM MEMÓRIA PRIMÁRIA Métodos Elementares Classificação por Trocas Método da Bolha Bubblesort Método de Partição
Leia maisMÉTODOS DE ORDENAÇÃO. Introdução à Programação SI1
MÉTODOS DE ORDENAÇÃO Introdução à Programação SI1 2 Conteúdo Conceitos básicos Classificação por troca Classificação por inserção Classificação por seleção 3 Conceitos Básicos Ordenar: processo de rearranjar
Leia maisAula 11 Métodos de Classificação em memória primária. Prof. Gustavo Callou
Aula 11 Métodos de Classificação em memória primária Prof. Gustavo Callou gustavo.callou@ufrpe.br gcallou@gmail.com Métodos de Classificação em Memória Primária Métodos Elementares Método da Bolha Bubblesort
Leia mais5. Algoritmos de Ordenação
Introdução à Computação II 5952011 5. Algoritmos de Ordenação Prof. Renato Tinós Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 5.1. Ordenação por Inserção 5.2. Ordenação por Seleção
Leia maisUniversidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Algoritmos e Estruturas de Dados II Prof. Fabrício Sérgio de Paula
Universidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Algoritmos e Estruturas de Dados II Prof. Fabrício Sérgio de Paula Tópicos Introdução Ordenação por bolha (bubble sort)
Leia maisBreve Introdução à Complexidade Assintótica de Algoritmos Letícia Rodrigues Bueno
Breve Introdução à Complexidade Assintótica de Algoritmos Letícia Rodrigues Bueno Introdução Objetivo: possibilitar medir eficiência de algoritmos; Introdução Objetivo: possibilitar medir eficiência de
Leia maisClassificação e Pesquisa Aula 6 Métodos de Ordenação: ShellSort e QuickSort. Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional
Classificação e Pesquisa Aula 6 Métodos de Ordenação: ShellSort e QuickSort Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional Plano de Ensino e Aprendizagem ( PEA) Algoritmo ShellSort Proposto por
Leia maisUNIVERSIDADE FEDERAL DO PIAUÍ COLÉGIO TÉCNICO DE TERESINA-TÉCNICO EM INFORMÁTICA DISCIPLINA: ESTRUTURA DE DADOS PROFESSOR: Valdemir Junior
UNIVERSIDADE FEDERAL DO PIAUÍ COLÉGIO TÉCNICO DE TERESINA-TÉCNICO EM INFORMÁTICA DISCIPLINA: ESTRUTURA DE DADOS PROFESSOR: Valdemir Junior ALGORITMO DE ORDENAÇÃO HEAPSORT Alyson Pereira Barbosa Erisvaldo
Leia maisINF111 Programação II Aulas 11, 12, 13 Ordenação
INF Programação II Aulas,, Ordenação Departamento de Informática UFV Ordenação A ordenação é o processo de organizar um conunto (vetor) de n obetos ou registros segundo uma determinada ordem crescente
Leia maisAlgoritmos de Ordenação: HeapSort
Algoritmos de Ordenação: HeapSort ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo dbeder@usp.br 10/2008 Material
Leia maisOrdenação: HeapSort. Prof. Túlio Toffolo BCC202 Aula 17 Algoritmos e Estruturas de Dados I
2014-01 Aula 16 Fila de Prioridade / HeapSort Adaptado por Reinaldo Fortes para o curso de 2014-01 Arquivo original: Aula 17: HeapSort Ordenação: HeapSort Prof. Túlio Toffolo http://www.toffolo.com.br
Leia maisOrdenação de Dados (III) HeapSort
UFSC-CTC-INE INE53 - Estruturas de Dados Ordenação de Dados (III) Prof. Ronaldo S. Mello 00/ HeapSort HeapSort também é um método de seleção ordena através de sucessivas seleções do elemento correto a
Leia maisSCC-601 Introdução à Ciência da Computação II. Ordenação e Complexidade Parte 3. Lucas Antiqueira
SCC-60 Introdução à Ciência da Computação II Ordenação e Complexidade Parte 3 Lucas Antiqueira Ordenação: Utiliza uma estrutura de dados chamada heap para ordenar. Um heap é um vetor (array) que representa
Leia maisAula 12 Métodos de Classificação: - Classificação por Inserção Direta - Classificação por Seleção Direta
Aula 12 Métodos de Classificação: - Classificação por Inserção Direta - Direta Prof. Gustavo Callou gustavo.callou@ufrpe.br gcallou@gmail.com Classificação por Inserção Métodos de Classificação em Memória
Leia maisheapsort (int *x, int n) { int i, e, s, f, aux; /*fase de pré-processamento - cria heap inicial*/ for (i=1; i<n; i++) { e = x[i]; s = i; f = (s-1)/2;
heapsort (int *x, int n) { int i, e, s, f, aux; /*fase de pré-processamento - cria heap inicial*/ for (i=1; i0 && x[f]
Leia maisAlgoritmos de Ordenação. Cota inferior. Professora: Fátima L. S. Nunes SISTEMAS DE INFORMAÇÃO
Algoritmos de Ordenação Cota inferior Professora: Fátima L. S. Nunes 1 1 1 Algoritmos de Ordenação Algoritmos de ordenação que já conhecemos: 2 2 2 Algoritmos de Ordenação Algoritmos de ordenação que já
Leia mais2. Ordenação por Seleção
1 Algoritmos de Ordenação Simples (SelectionSort, InsertionSort, BubbleSort) 1. Introdução Objetivo: Determinar a seqüência ordenada dos elementos de um vetor numérico. Algumas considerações: O espaço
Leia maisTópico 5 Algoritmos de Ordenação. Parte I - métodos de ordenação: inserção, mergesort, heapsort e quicksort.
Tópico 5 Algoritmos de Ordenação Parte I - métodos de ordenação: inserção, mergesort, heapsort e quicksort. 1 Problema Computacional: Ordenação Problema computacional que surge em diversas situações. Definição:
Leia maisEdital de Seleção 024/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 024/2017 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: «Nome» INSCRIÇÃO: «Inscrição» Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome
Leia maisHeapsort Letícia Rodrigues Bueno
Heapsort Letícia Rodrigues Bueno UFABC Heaps Heaps: lista linear com chaves s 1,..., s n com propriedade s i s i/2, para 1 < i < n; Heaps Heaps: lista linear com chaves s 1,..., s n com propriedade s i
Leia maisOrdenação: Heapsort. Algoritmos e Estruturas de Dados II
Ordenação: Heapsort Algoritmos e Estruturas de Dados II Introdução Possui o mesmo princípio de funcionamento da ordenação por seleção Selecione o menor item do vetor Troque-o pelo item da primeira posição
Leia maisÁRVORES. Prof. Yan ndre Maldonado - 1. Prof. Yandre Maldonado e Gomes da Costa
ÁRVORES Prof. Yan ndre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa Árvores Prof. Yan ndre Maldonado - 2 Árvores são estruturas de dados que caracterizam uma relação entre os dados que a compõem;
Leia maisMétodos de Ordenação
Métodos de Ordenação Conceitos básicos sobre ordenação Ordenar corresponde ao processo de rearranjar um conjunto de objetos em uma ordem específica. Objetivo da ordenação: facilitar a recuperação posterior
Leia maisLista de Prioridades. Estrutura de Dados II Prof. Erinaldo
Lista de Prioridades Estrutura de Dados II Prof. Erinaldo Heap Ou lista de prioridades, é composta por um conjunto finito de dados, cada qual com uma chave que determinará sua prioridade dentro da lista.
Leia maisINF 1010 Estruturas de Dados Avançadas
INF 1010 Estruturas de Dados Avançadas Listas de Prioridades e Heaps 12/09/16 2012 DI, PUC-Rio Estruturas de Dados Avançadas 2012.1 1 uma outra aplicação de árvores binárias lista de prioridades: lista
Leia maisFilas de prioridade. Marcelo K. Albertini. 27 de Novembro de 2014
Filas de prioridade Marcelo K. Albertini de Novembro de / Filas de prioridade O que é uma fila de prioridade? Estrutura de dados que generaliza a ideia de ordenação. Coleções de elementos: inserir e remover
Leia maisFilas de prioridade. Marcelo K. Albertini. 3 de Dezembro de 2013
Filas de prioridade Marcelo K. Albertini de Dezembro de / Filas de prioridade O que é uma fila de prioridade? Estrutura de dados que generaliza a ideia de ordenação. Coleções de elementos: inserir e remover
Leia maisAlgoritmos de Ordenação: Cota Inferior
Algoritmos de Ordenação: Cota Inferior ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo dbeder@usp.br 10/2008 Material
Leia maisAlgoritmos de ordenação Heapsort
Algoritmos de ordenação Heapsort Sumário Introdução A estrutura de dados heap Definição Manutenção da propriedade de heap A construção de um heap O algoritmo heapsort Introdução Características do heapsort
Leia maisComplexidade Assintótica de Programas Letícia Rodrigues Bueno
Complexidade Assintótica de Programas Letícia Rodrigues Bueno Análise de Algoritmos 1. Introdução; Análise de Algoritmos 1. Introdução; 2. Conceitos básicos; Análise de Algoritmos 1. Introdução; 2. Conceitos
Leia maisEstruturas de Dados Algoritmos de Ordenação
Estruturas de Dados Prof. Eduardo Alchieri (introdução) Considere uma sequência arbitrária S = {s1, s2, s3,...sn} composta por n 0 elementos retirados do conjunto universo U O objetivo da ordenação é arrumar
Leia maisHeapSort Filas de Prioridade Heap. David Menotti Algoritmos e Estruturas de Dados II DInf UFPR
HeapSort Filas de Prioridade Heap David Menotti Algoritmos e Estruturas de Dados II DInf UFPR Filas de Prioridades É uma estrutura de dados onde a chave de cada item reflete sua habilidade relativa de
Leia maisFilas de Prioridades Letícia Rodrigues Bueno
Filas de Prioridades Letícia Rodrigues Bueno UFABC Heaps Heaps: lista linear com chaves s 1,..., s n com propriedade s i s i/2, para 1 < i < n; Heaps Heaps: lista linear com chaves s 1,..., s n com propriedade
Leia maisListas de Prioridade. Fonte de consulta: Szwarcfiter, J.; Markezon, L. Estruturas de Dados e seus Algoritmos, 3a. ed. LTC.
Listas de Prioridade Fonte de consulta: Szwarcfiter, J.; Markezon, L. Estruturas de Dados e seus Algoritmos, 3a. ed. LTC. Capítulo 6 Prioridade } Algumas aplicações precisam recuperar rapidamente um dado
Leia mais3. Conteúdo de um vértice v é conteúdo dos filhos de v.
Árvore Hierárquica Em inglês é chamada de Heap. Representar: conjunto C de elementos com relação. Operações: Ins x,c (inserir x em C e ExMax C (extrair o máximo do conjunto). Chamado também de Fila de
Leia maisEdital de Seleção 023/2018 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 023/2018 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua
Leia maisESTRUTURA DE DADOS E ALGORITMOS HEAPS E LISTAS DE PRIORIDADES
ESTRUTURA DE DADOS E ALGORITMOS HEAPS E LISTAS DE PRIORIDADES Listas de Prioridades! Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade! A prioridade associada a um dado pode
Leia maisÁrvores. SCC-214 Projeto de Algoritmos. Thiago A. S. Pardo. Um nó após o outro, adjacentes Sem relações hierárquicas entre os nós, em geral
SCC-214 Projeto de Algoritmos Thiago A. S. Pardo Listas e árvores Listas lineares Um nó após o outro, adjacentes Sem relações hierárquicas entre os nós, em geral Diversas aplicações necessitam de estruturas
Leia maisAnálise de algoritmos
Análise de algoritmos Heapsort Conteúdo Introdução A estrutura de dados heap Definição Manutenção da propriedade de heap A construção de um heap O algoritmo heapsort Exercícios Referências Introdução Heapsort
Leia maisOrdenação de Dados. Ordenação de Dados
UFSC-CTC-INE INE38 - Estruturas de Dados Ordenação de Dados Prof. Ronaldo S. Mello 00/ Ordenação de Dados Processo bastante utilizado na computação de uma estrutura de dados Dados ordenados garantem uma
Leia maisOrdenação. Prof. Jonas Potros
Ordenação Prof. Jonas Potros Conceitos Básicos Ordenar: processo de rearranjar um conjunto de objetos em uma ordem ascendente ou descendente. A ordenação visa facilitar a recuperação posterior de itens
Leia maisAula 13: Ordenação - Heapsort. Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP
Aula 13: Ordenação - Heapsort Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP Filas de Prioridades É uma estrutura de dados onde a chave de cada item reflete sua habilidade relativa de abandonar
Leia maisAlgoritmos de ordenação: Inserção e Shellsort
CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS Algoritmos de ordenação: Inserção e Shellsort Algoritmos e Estruturas de Dados I Slides adaptados dos slides do livro texto (Ziviani) e dos slides
Leia maisALGORITMOS E ESTRUTURAS DE DADOS CES-11 Prof. Paulo André Castro Sala 110 Prédio da Computação IECE - ITA
ALGORITMOS E ESTRUTURAS DE DADOS CES-11 Prof. Paulo André Castro pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac IECE - ITA MÉTODOS MAIS EFICIENTES QUE O(N 2 ) Método Quicksort Método
Leia maisOrdenação: QuickSort. Prof. Túlio Toffolo BCC202 Aula 15 Algoritmos e Estruturas de Dados I
Ordenação: QuickSort Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aula 15 Algoritmos e Estruturas de Dados I QuickSort Proposto por Hoare em 1960 e publicado em 1962. É o algoritmo de ordenação
Leia maisÁRVORES BINÁRIAS DE BUSCA. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos
ÁRVORES BINÁRIAS DE BUSCA Vanessa Braganholo Estruturas de Dados e Seus Algoritmos REFERÊNCIA Szwarcfiter, J.; Markezon, L. Estruturas de Dados e seus Algoritmos, 3a. ed. LTC. Cap. 4 INSTITUTO DE COMPUTAÇÃO
Leia maisMétodos de Ordenação Parte I
Estrutura de Dados II Métodos de Ordenação Parte I Prof a Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Material baseado nos materiais da Prof a Ana Eliza e Prof. Robson Lins Rearranjar
Leia maisExtra- Algoritmos de Ordenação
Extra- Algoritmos de Ordenação 1 Introdução Ordenar: processo de rearranjar um conjunto de objetos em uma ordem ascendente ou descendente. A ordenação visa facilitar a recuperação posterior de itens do
Leia maisSCC-501 Introdução à Ciência de Computação II
SCC-501 João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos http://www.icmc.usp.br/~joaoluis 2011 João
Leia maisTrabalho Prático 1. Valor: 1,0 pontos (10% da nota total) Data de Entrega: 02/05/2010
Universidade Federal de Ouro Preto Instituto de Ciências Exatas e Biológicas Programa de Pós-Graduação em Ciência da Computação Projeto e Análise de Algoritmos - 1 o semestre de 2010 Professor: David Menotti
Leia maisÁrvores binárias de busca
Árvores binárias de busca S-202 lgoritmos e Estruturas de Dados I Prof. Thiago. S. Pardo Árvore binárias Árvores de grau 2, isto é, cada nó tem dois filhos, no máximo Raiz D B E Terminologia: filho esquerdo
Leia maisÁrvores Vermelho-Preto
SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade de São
Leia maisÁrvores Vermelho-Preto
Árvores Vermelho-Preto SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC)
Leia maisESTRUTURA DE DADOS E ALGORITMOS. Árvores Binárias de Busca. Cristina Boeres
ESTRUTURA DE DADOS E ALGORITMOS Árvores Binárias de Busca Cristina Boeres Árvore Binária de Busca 30! construída de tal forma que, para cada nó: nós com chaves menores estão na sub-árvore esquerda nós
Leia maisEstruturas de Dados 2
Estruturas de Dados 2 Técnicas de Projeto de Algoritmos Dividir e Conquistar IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 1/83 Projeto de Algoritmos por Divisão
Leia maisMétodos de Ordenação Parte 4
Métodos de Ordenação Parte 4 Introdução à Ciência de Computação II Prof. Diego Raphael Amancio Baseado no material do Prof. Rudinei Goularte e Prof. Thiago A. S. Pardo 1 Ordenação por Intercalação Revisando...
Leia maisEstrutura de Dados. Plano de Ensino. Vilson Heck Junior. Campus Lages. Instituto Federal de Santa Catarina
Estrutura de Dados Plano de Ensino Vilson Heck Junior Instituto Federal de Santa Catarina Campus Lages Sumário 1 Sumário 2 Plano de Ensino Competências, Habilidades e Atitudes Bases Tecnológicas Instrumentos
Leia maisOrdenação por Seleção Métodos de Ordenação Parte 3
Ordenação por Seleção Métodos de Ordenação Parte SCC-6 Introdução à Ciência da Computação II Rosane Minghim Idéia básica: os elementos são selecionados e dispostos em suas posições corretas Seleção direta
Leia maisMétodos de Ordenação
Métodos de Ordenação Parte 3 SCC-601 Introdução à Ciência da Computação II Rosane Minghim 2010/2011 Baseado no material dos Professores Rudinei Goularte e Thiago Pardo 1 Ordenação por Seleção Idéia básica:
Leia maisAnálise de algoritmos
Análise de algoritmos Heapsort Prof. Flávio Rogério Uber Autor: Prof. Marco Aurélio Lopes Barbosa (UEM/DIN) Conteúdo Introdução A estrutura de dados heap Definição Manutenção da propriedade de heap A construção
Leia maisPLANO DE DISCIPLINA DISCIPLINA: Estrutura de Dados 2
UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE COMPUTAÇÃO BACHARELADO EM SISTEMAS DE INFORMAÇÃO PLANO DE DISCIPLINA DISCIPLINA: Estrutura de Dados 2 ( X ) SEMESTRAL - ( ) ANUAL CÓDIGO: GSI011 PERÍODO:
Leia maisÁrvores Binárias. Disciplina de Algoritmos e Estrutura de Dados III. Prof. Marcos Antonio Schreiner 17/03/2015
Árvores Binárias Disciplina de Algoritmos e Estrutura de Dados III Prof. Marcos Antonio Schreiner 17/03/2015 1 Introdução Árvore binárias são estruturas importantes toda vez que uma decisão binária deve
Leia maisPrograma Analítico de Disciplina SIN213 Projeto de Algoritmos
Programa Analítico de Disciplina Campus Rio Paranaíba - Campus Rio Paranaíba Número de créditos: 6 Teóricas Práticas Total Duração em semanas: 15 Carga horária semanal 4 2 6 Períodos - oferecimento: II
Leia maisÁRVORES. Árvores. Árvores. Prof. Yandre Maldonado e Gomes da Costa
ÁRVORES Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa Árvores Prof. Yandre Maldonado - 2 Árvores são estruturas de dados que caracterizam uma relação entre os dados que a compõem;
Leia maisPLANO DE DISCIPLINA DISCIPLINA: Análise de Algoritmos
UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE COMPUTAÇÃO BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO PLANO DE DISCIPLINA DISCIPLINA: Análise de Algoritmos ( X ) SEMESTRAL - ( ) ANUAL CÓDIGO: GBC052 PERÍODO:
Leia maisHeapsort é um método de ordenação cujo princípio de funcionamento é o mesmo utilizado para a ordenação por seleção.
Heapsort Heapsort é um método de ordenação cujo princípio de funcionamento é o mesmo utilizado para a ordenação por seleção. Selecione o maior (ou menor) item do vetor e a seguir troque-o com o item que
Leia maisEdital de Seleção 032/2016 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 032/2016 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua
Leia maisESTRUTURA DE DADOS CIÊNCIA E TECNOLOGIA DO RIO. Curso de Tecnologia em Sistemas para Internet
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE ESTRUTURA DE DADOS Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br Curso de Tecnologia
Leia maisEdital de Seleção 053/2016 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 053/2016 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua
Leia maisOrdenação em Memória Primária Estrutura de Dados II
- Centro de Ciências Exatas, Naturais e de Saúde Departamento de Computação Ordenação em Memória Primária Estrutura de Dados II Estrutura de Dados II COM10078-2017-I Prof. Marcelo Otone Aguiar marcelo.aguiar@ufes.br
Leia maisESTRUTURA DE DADOS DCC013. Árvore Binária de Busca
ESTRUTURA DE DADOS DCC013 Árvore Binária de Busca Árvore Binária de Busca Propriedade fundamental da árvore binária de busca Valor da chave da raiz é Maior do que o valor da chave da subárvore da esquerda
Leia maisAula 28: Listas de Prioridades
28.1 Aula 28: Listas de Prioridades Conceitos básicos Definição de heap Alteração de prioridades 28.2 Listas de Prioridades Motivação: Os dados possuem prioridades. A prioridade de um dado pode variar
Leia maisUniversidade Federal do ABC Avaliação Disciplina Turma Professor Data Instruções para a prova (leia antes de começar): SelectionSort selectonsortrec
Universidade Federal do ABC Avaliação: Prova 02 Disciplina: BC1424 - Algoritmos e Estruturas de Dados I Turma: Noturno Professor: Jesús P. Mena-Chalco Data: 03/05/2016 Nome completo: RA: Instruções para
Leia maisSCC-201 Introdução à Ciência de Computação II
SCC-201 João Luís Garcia Rosa 1 Ricardo J. G. B. Campello 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos http://www.icmc.usp.br
Leia maisInformática Parte 18 Prof. Márcio Hunecke
Escriturário Informática Parte 18 Prof. Márcio Hunecke Informática ORDENAÇÃO (MÉTODOS DA BOLHA, ORDENAÇÃO POR SELEÇÃO, ORDENAÇÃO POR INSERÇÃO, LISTA ENCADEADA, PILHA, FILA, NOÇÕES SOBRE ÁRVORE BINÁRIA)
Leia maisAlgoritmos e Estrutura de dados II. Fila de Prioridade e Heaps
Algoritmos e Estrutura de dados II Fila de Prioridade e Heaps 1 Heap Sort...mas antes Agenda Implementação de uma Fila de Prioridade usando um HEAP Propriedade do Heap e exemplos adcionar min/max Remover
Leia maisDAINF - Departamento de Informática
DAINF - Departamento de Informática Algoritmos 2 - Árvore binária de busca Prof. Alex Kutzke ( http://alex.kutzke.com.br/courses ) 30 de Novembro de 2015 Slides adaptados do material produzido pelo Prof.
Leia maisÁrvores binárias de busca
Árvores binárias de busca SCC-214 Projeto de Algoritmos Thiago A. S. Pardo Árvore binárias Árvores de grau 2, isto é, cada nó tem dois filhos, no máximo Raiz D B A E C F Terminologia: filho esquerdo filho
Leia maisEstruturas de Dados. Módulo 17 - Busca. 2/6/2005 (c) Dept. Informática - PUC-Rio 1
Estruturas de Dados Módulo 17 - Busca 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)
Leia maisBCC202 - Estrutura de Dados I
BCC202 - Estrutura de Dados I Aula 15: Ordenação: ShellSort Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Computação, DECOM Website: www.decom.ufop.br/reifortes Email: reifortes@iceb.ufop.br
Leia maisÁrvores de pesquisa. Árvores de pesquisa equilibradas
Árvores VL Árvores Splay Árvores Árvores de pesquisa Árvores Vermelho-Preto Árvores e Árvores Multidimensionais quaternárias k-d [Árvores para Pesquisa Lexicográfica tries multivia tries binárias PTRII]
Leia maisAlgoritmos e Estruturas de Dados 2006/2007
Filas de prioridade Algoritmos e Estruturas de Dados 2006/2007 Filas de prioridade Uma fila de prioridade permite, pelo menos, duas operações sobre um conjunto de valores comparáveis: inserção de um elemento
Leia maisCarlos Eduardo Batista. Centro de Informática - UFPB
Estrutura de Dados Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Métodos de pesquisa e classificação de dados (continuação) Estruturas de Dados 2 Algoritmo de busca Recebe como argumento
Leia maisEdital de Seleção 016/2018 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 016/2018 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua
Leia mais1. O que é a eficiência assintótica de um algoritmo. Explique com suas palavras.
Disciplina: Estrutura de Dados II Turma: 4EC/5CC Data: 13/11/15 Nota: Professor: Renato E. N. de Moraes Semestre: 2015-2 Valor: 0,0 pts Aluno: Lista de exercícios 04 1. O que é a eficiência assintótica
Leia maisOrdenação e Busca em Arquivos
Ordenação e Busca em Arquivos Cristina D. A. Ciferri Thiago A. S. Pardo Leandro C. Cintra M.C.F. de Oliveira Moacir Ponti Jr. Exemplos de Busca Registros de tamanho fixo M A R I A R U A b 1 S A O b C A
Leia maisLimite assintótico para a ordenação, Ordenação em tempo linear
Algoritmos e Estruturas de Dados I Limite assintótico para a ordenação, Ordenação em tempo linear Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 1Q-2017 1 Ordenação Ordenar corresponde ao processo
Leia maisEstrutura de Dados. Algoritmos de Ordenação. Prof. Othon M. N. Batista Mestre em Informática
Estrutura de Dados Algoritmos de Ordenação Prof. Othon M. N. Batista Mestre em Informática Roteiro Introdução Ordenação por Inserção Insertion Sort Ordenação por Seleção Selection Sort Ordenação por Bolha
Leia maisProva 2 PMR2300 1o. semestre 2015 Prof. Thiago Martins
Prova PMR00 o. semestre 0 Prof. Thiago Martins Instruções: Escreva o nome e o número USP na folha de papel almaço.. ( pontos) Um heap binário é uma árvore binária completa (todos os níveis exceto o último
Leia mais