Fila de Prioridades
UnB-\(\gamma\)
Table of Contents
1. Introdução
2. Exercícios
- Resolva os exercícios de PQ prof_Feofiloff
- (SW 9.1) Suponha que a sequência
P R I O * R * * I * T * Y * * * Q U E * * * U * E
é aplicada a uma PQ de máximo inicialmente vazia. Uma letra significa inserção e um asterisco significa remoção do máximo. Dê a sequência de letras produzida pelas remoções. Sedgewick - (SW 9.17) Um vetor em ordem decrescente é um heap decrescente? Um vetor em ordem crescente é um heap crescente? Sedgewick
- Insira os itens
E A S Y Q U E S T I O N
, nessa ordem, em um heap decrescente inicialmente vazio. Mostre o heap que resulta. Sedgewick - Escreva um método
isMaxHeap()
para verificar se o vetorpq[]
é um heap decrescente. O seu algoritmo deve consumir tempo linear. Repita para heap crescente. Sedgewick - Fila priorizada min/max. Projete um tipo-de-dados que dê suporte às seguinte operações: inserção, remoção do mínimo, remoção do máximo, encontrar o mínimo (sem remover), e encontrar o máximo (sem remover). As três primeiras operações devem consumir tempo logarítmico e as duas últimas devem consumir tempo constante. Dica: Use dois heaps. Sedgewick
- Escreva a API completa de Filas de Prioridade de maneira que ela suporte mais de um Fila de prioridades no seu programa
- Como você pode implementar um algoritmo de Ordenação utilizando o conceito de filas de prioridade?
- Rode o conjunto de benchmark de ordenação e idenfique o comportamento dos algoritmos HeapSort e PQsortsimple quando se comparado com o melhor quicksort e o mergesort
- O HeapSort é estável?
- Você é capaz de ressolver esta ISSUE?
- Qual implementação (em vetor ordenado ou não ordenado, com lista encadeada ordenada ou não ordenada, árvore binária em vetor) para encontrar os \(100\) menores elementos de um conjundo de \(10^6\) números aleatórios? Sedgewick
- Implemente e faça testes de desempenho
- Resolva o problema Classificados de Sementes utilizando os conceitos de fila de prioridades
- Você pode ler o Enunciado aqui
- O exercício pode ser resolvido na lista de exercícios de Quicksort
- É possível resolver o problema kk-página utilizando os conceitos de fila de prioridades?
- Você pode ler o Enunciado aqui
- O exercício pode ser resolvido na lista de exercícios de Quicksort
- Resolva o problema Eu posso advinhar a estrutura de dados! urionlinejudge
- Implemente a ADT de fila de prioridades para fazer a troca baseada em índice (como vimos no fim da última aula)
- Suponha que um vetor está preenchido com as seguintes chaves
E A S Y Q U E S T I O N
. Imprima o conteúdo do vetorpq
eqp
após a inserção dos elementos da fila de prioridades implementada no exercício 2.0.0.16 - Adicione a operação remover na sua implementação do problema 2.0.0.16
- esta função serve para quando se remover um elemento qualquer do vetor original
- Resolva o exercício Churrascarias da Avenida utilizando a implementação feita no exercício 2.0.0.16 spoj br