\MATEMÁTICA DISCRETA 2º. AP (28-06-2006) 1. Uma colônia de morcegos é contada a cada dois meses. As quatro primeiras contagens foram de 1.200, 1.800, 2.700 e 4.050. Se esta taxa de crescimento continuar, qual será a 12ª. contagem? 2. Problema da Torre de Hanói. Inicialmente os discos formam uma torre onde todos são colocados em um dos pinos em ordem decrescente de tamanho. Devemos transferir toda a torre para um dos outros pinos de modo que cada movimento é feito somente com um disco, nunca havendo um disco maior sobre um disco menor. a) Escreva um programa recursivo em pseudo-código (qualquer pseudo-código) para resolver o problema da Torre de Hanói. b) Qual a menor quantidade de movimentos necessária para resolver o problema com n discos? Qual a quantidade de movimentos que seu programa executa? 3. Uma árvore é uma estrutura definida recursivamente como se segue. (i) Um único nó é uma árvore. (ii) Dadas T1, ..., Tn árvores, adicionando-se um novo N nó (a raiz) e ligando-o (por arestas) às raízes de cada árvore T1, ..., Tn, obtém-se uma nova árvore. a) Prove por indução estruturada que em qualquer árvore o número de nós é igual ao número de arestas mais 1. 4. Um outro algoritmo para se ordenar n (n 2) números em ordem crescente, é obtido primeiro encontrando os dois maiores números e em seguida (recursivamente) ordenando os n – 2 números restantes. Note que na primeira parte do algoritmo são feitas 2n -3 comparações. a) Escreva o pseudo-código deste algoritmo. b) Este algoritmo é mais eficiente do que o algoritmo “ordenação por seleção” dado em classe? Note que no algoritmo de ordenação faz-se n-1 comparações para se 1 obter o maior número e depois se ordena recursivamente os n– 1 números restantes. Neste algoritmo são necessárias n(n – 1)/2 comparações. 5. a) Resolva as equações de recorrência. an = 2an-1 + n2n; a1 = 2. b) an = 2an/2 + n2; a1 = 1; n = 2m, n 1. 2