UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO PRÓ-REITORIA DE ENSINO DE GRADUAÇÃO CURSO DE CIÊNCIA DA COMPUTACAO DISCIPLINA: ALGORITIMOS E ESTRUTURAS DE DADOS 2 LISTA DE EXERCICIOS 1 – ARVORES (Questões selecionadas da web) 1) Quantos antecedentes tem um nó no nível n em uma árvore binária? Prove sua resposta. 2) Uma árvore estritamente binária com n nós folhas contém quantos nós? 3) Escreva algoritmos recursivos e não-recursivos (iterativos) para determinar: a. O número de nós em uma árvore binária b. A soma dos conteúdos de todos os nós em uma árvore binária, considerando que cada nó contém um inteiro c. A altura de uma árvore binária 4) Escreva um algoritmo para determina se uma árvore binária é: a. estritamente binária b. completa 5) Duas árvores binárias são similares se elas são vazias ou se elas não são vazias e suas subarvores da esquerda são similares e suas subarvores da direita são também similares. Escreva um algorítmo para determinar se duas árvores binárias são similares. 6) Achar o maior elemento (campo numérico) de uma árvore binária dada. 7) Considere árvores binárias que representam expressões aritméticas (composta por operandos compostos por um único algarismo, operações de +, -, * e / e parênteses) como as apresentadas abaixo. UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO PRÓ-REITORIA DE ENSINO DE GRADUAÇÃO CURSO DE CIÊNCIA DA COMPUTACAO DISCIPLINA: ALGORITIMOS E ESTRUTURAS DE DADOS 2 LISTA DE EXERCICIOS 1 – ARVORES (Questões selecionadas da web) Escreva um algoritmo que receba um árvore e retorne uma string correspondente a versão infixa da expressão que contém somente aqueles parenteses que são necessários. 8) Implemente uma função que retorne a quantidade de folhas de uma árvore binária. Essa função deve obedecer ao protótipo: int folhas (Tree t);