Algoritmos e Estruturas de Dados

Lista de Exercícios 2

Data de Distribuição: 27 de abril de 1999

Data de Entrega: 25 de maio de 1999

Orientações:

  1. Escrever um procedimento para, dado um conjunto de inteiros, inserir eles em uma árvore binária de busca (implementada com apontadores). Após isso, você deve identificar o "fator de equilíbrio" de cada nó. O "fator de equilíbrio" é um inteiro (positivo ou negativo) que indica a diferença entre as alturas das sub-árvores à esquerda e à direita do vértice. Note que este deve ser um procedimento recursivo, onde a informação é passada bottom-up, ou seja, de baixo para cima. A base da recursão está nas folhas, onde as soluções são triviais. (4.0)
  2. Quando discutimos o TDA Lista de Prioridades implementado segundo um heap, vimos em detalhes a implementaçao via tabelas. Com base na implementaçao para as funçoes ZERAR e INSERIR, mostradas em aula, implemente um programa que organize uma lista de prioridades segundo um heap. As funçoes ZERAR e INSERIR ja estao praticamente implementadas, faltando apenas a implementaçao da funçao SUPRI_MAX. O programa devera ser testado com uma lista de dados fornecida pelos monitores. (3.0)
  3. Quando discutimos o TDA Dicionario implementado segundo a tecnica de endereçamento dispersado, vimos em detalhes a abordagem aberta. Com base na implementaçao para as funçoes ZERAR, ELEMENTO e INSERIR, mostradas em aula, faça um programa que implemente o TDA Dicionario segundo a tecnica de endereçamento dispersado aberta. As funçoes ZERAR, ELEMENTO eINSERIR ja estao praticamente implementadas, faltando apenas a implementaçao da funçao SUPRIMIR. O programa devera ser testado com uma lista de dados fornecida pelos monitores. (3.0)