UNIP – Universidade Paulista
Curso...: Bach. em Ciência da Computação Disciplina..: Estrutura de Dados
Professor...: Leandro Carlos Fernandes
-:: Lista de Exercícios #2 ::-
Tópicos: Árvores, Árvores Binárias
1) Dada a árvore abaixo, indique: a) Quais são os nós folhas?
b) Qual é o grau de cada nó?
c) Qual o grau da árvore?
d) Qual a altura da árvore?
e) Quais são os descendentes do nó 18?
f) Quais são os ancestrais do nó 5?
2) Represente a árvore dada no exercício 1 utilizando outras formas de representações, por exemplo: paragrafação, parênteses aninhados e diagramas de Venn.
3) Desenhe as árvores que correspondem às seguintes expressões aritméticas:
a) 2 * (a – b / c);
b) a + b + 5 * c
4) QUIZ (responda rápido com verdadeiro ou falso):
a) Num diagrama convencional de árvore (raiz no topo), se o nó X tem nível maior que o nó Y, então X aparece abaixo de Y no diagrama.
b) Se o nó A tem três irmãos e B é pai de A, qual o grau de B é 2.
c) O tipo de dados árvore representa organizações hierárquicas entre dados.
d) As operações de busca em uma árvore binária não a alteram, enquanto operações de inserção e remoção de nós provocam mudanças sistemáticas na árvore.
e) Quando não é possível prever antecipadamente quantos nodos serão necessários para a criação e utilização de uma árvore binária, utilizam-se, na sua implementação, listas encadeadas.
f) É possível manter em uma estrutura de árvore, além dos ponteiros normais de pais para filhos, ponteiros adicionais dos filhos para os pais e ponteiros entre os irmãos. Isso confere maior flexibilidade nos modos de percurso da árvore, embora resulte em sobrecarga de armazenamento e de processamento.
5) Considerando as classes ArvoreBinaria e Nodo desenvolvida durante as aulas práticas, implemente:
a) um método qtdeNodos() que conte o número total de nós da árvore.
b) um método qtdeFolhas() que calcule o número de nodos folhas da árvore.
c) um método chamado altura, que compute e retorne à altura da árvore a partir do nodo corrente.
6) Supondo as árvores binárias abaixo, expressas na forma parentizada aninhada, pede-se a você que liste seus nós em: (i) pré-ordem, (ii) em-ordem, e (iii) pós-ordem
a) (1 (2 (4) (5)) (3 (6) (7)));
b) (A (B (D (F)) (E)) (C (G (H)))).
7) Suponha que uma árvore binária foi percorrida duas vezes e que o percurso em pré-ordem resultou em [1 2 3 4 5 6 7 8 9] e o percurso em-ordem resultou em [3 2 6 5 4 1 7 8 9]. Desenhe a árvore binária que poderia ter gerado estas sequencias de visitação.
8) Mostre que, se conhecermos a sequência de nós em pré-ordem e em-ordem de uma árvore binária, podemos descobrir qual é a estrutura dessa árvore. Dê um exemplo.
9) Dada uma Árvore Binária de Busca (ABB), inicialmente vazia, proceda a inserção dos seguintes elementos desenhando a estrutura: M, F, S, D, J, P, U, A, E, H, Q, T, W, K
10)Supondo a árvore resultante do exercício anterior, redesenhe-a após a remoção dos elementos: A, D e S
11)[POSCOMP 2018] Sobre árvores binárias, é correto afirmar que:
a) É uma árvore em que todo nó interno contém um registro e, para cada nó, a seguinte propriedade é verdadeira: todos os registros com chaves menores estão na subárvore esquerda e todos os registros com chaves maiores estão na subárvore direta.
b) A altura de um nó é o comprimento do caminho mais longo deste nó até um nó folha. A altura de uma árvore é a altura do nó raiz.
c) Se o nível do nó raiz de uma árvore binária é zero; se um nó está no nível i, a raiz de suas duas subárvores está no nível i+2.
d) O número de subárvores de um nó é chamado de grau. Um nó de grau dois é chamado de nó externo ou nó folha.
e) Para encontrar um registro que contém a chave x em uma árvore binária de pesquisa, primeiro compare-a com a chave que está na raiz. Se é menor, vá para a subárvore da direita; se é maior, vá para a subárvore da esquerda.
12) Duas ABBs são SIMILARES se possuem a mesma distribuição de nós, independente dos valores nos mesmos. Em uma definição mais formal, duas ABBs são SIMILARES se são ambas vazias, ou se suas subárvores esquerdas são similares, e suas subárvores direitas também são similares. Escreva um método que verifique se uma árvore binária é similar a outra.
13)Duas ABBs são espelho-similares (mirror similar) se elas são vazias ou se elas não são vazias e as sub- árvores esquerdas de cada uma são espelho-similares as subárvores direita da outra. Escreva um método que verifique se uma árvore binária é espelho similar a outra.
14) Duas ABBs são iguais se elas são vazias ou então se armazenam valores iguais em suas raízes, suas sub- árvores esquerdas são iguais e suas subárvores direita também são iguais. Escreva um método que verifique se uma árvore binária é espelho similar a outra.