• Nenhum resultado encontrado

Crie uma fun¸c˜ao que receba um ponteiro para a raiz de uma ´arvore bin´aria de busca, e dois valores

N/A
N/A
Protected

Academic year: 2022

Share "Crie uma fun¸c˜ao que receba um ponteiro para a raiz de uma ´arvore bin´aria de busca, e dois valores"

Copied!
2
0
0

Texto

(1)

MAC–IME–USP Carlos Eduardo Ferreira Sala 108C Tel.: 3091 6079 e-mailcef@ime.usp.br monitorLeonardo B. Facci e-maillbfacci@ime.usp.br

MAC 323 - Estruturas de Dados Primeiro semestre de 2007

Segunda Lista de Exerc´ıcios –Entrega: 28 de maio de 2007

1. Crie uma fun¸c˜ao que receba um ponteiro para a raiz de uma ´arvore bin´aria de busca, e dois valores. A fun¸c˜ao deve retornar o ancestral comum mais pr´oximo dos dois valores. Caso algum dos valores n˜ao esteja na lista, retorne NULL.

2. Crie uma fun¸c˜ao que receba um ponteiro para a raiz de uma ´arvore bin´aria de busca, e, a partir dela, construa uma ´arvore arbitr´aria (primeiro filho/irm˜ao), devolvendo um ponteiro para sua raiz.

3. Crie uma fun¸c˜ao que receba um ponteiro para a raiz de uma ´arvore bin´aria de busca e um

´ındiceientre 0. . . n−1, onden´e o n´umero de elementos da ´arvore, e devolva oi-´esimo menor elemento da ´arvore.

4. Suponha que vocˆe precise executar o algoritmo da quest˜ao 3 v´arias vezes. Quais mudan¸cas vocˆe faria na estrutura do ´arvore para que conseguisse a resposta mais rapidamente? Sugira tamb´em mudan¸cas nas fun¸c˜oes de inser¸c˜ao e remo¸c˜ao de elementos na ´arvore.

5. Crie uma fun¸c˜ao que receba um ponteiro para a raiz de uma ´arvore bin´aria de busca e torne- a uma ´arvore bin´aria de busca com fios. Considere que a estrutura dos n´os j´a cont´em os ponteirospr´oximo e anterior, e que eles inicialmente apontam para NULL.

1

(2)

6. Escreva fun¸c˜oes que imprimam os valores de uma ´arvore arbitr´aria (primeiro filho/irm˜ao) em pr´e-ordem e p´os-ordem. Considere que vocˆe tem uma fun¸c˜aoImprimeValor(N o∗p no) que fa¸ca a impress˜ao.

Sa´ıda pr´e-ordem: 10-5-7-15-13-12-17 Sa´ıda p´os-ordem: 7-5-12-13-17-15-10 Algumas notas finais:

• Para todos os problemas vocˆe deve alocar os n´os atrav´es da fun¸c˜ao AlocaNo e liber´a-los com aLiberaNo. Considere que vocˆe sempre consegue alocar os n´os.

• Em momento algum ser´a necess´ario fazer mallocs, ou tratamento de erro de entrada.

• Se precisar usar alguma outra estrutura de dados como pilha, fila, fila dupla ou listas, n˜ao precisa implement´a-la.

• Coloque na resposta somente a fun¸c˜ao pedida, e as auxiliares que ela possa precisar. N˜ao ´e necess´ario o c´odigo de todo o programa.

• Fa¸ca coment´arios em seu c´odigo para explicar o que n˜ao for ´obvio. Exemplo: vocˆe n˜ao precisa explicar quando est´a alocando um novo n´o. Mas ´e bom que explique quando est´a procurando por algo na lista.

• Evite entregar exerc´ıcios em branco. Se n˜ao conseguir resolver por completo, fa¸ca umpseudo- rascunho-c´odigo do que pensou.

• Tente resolver todos os exerc´ıcios da maneira mais eficiente poss´ıvel. Todos tˆem solu¸c˜oes curtas e r´apidas.

• Entregue sua lista preferencialmente em papel, em vez de usar a submiss˜ao online.

2

Referências

Documentos relacionados

demais campi estão sem um Regimento Interno ainda constituído; que no caso de Oriximiná, 98. que é um campus mais antigo, já haviam formulado um processo democrático de construção

Senhores Acionistas, os membros do CONSELHO FISCAL da Suzano Papel e Celulose S.A., em reunião realizada nesta data e no uso de suas atribuições legais e estatutárias, examinaram o

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

•   O  material  a  seguir  consiste  de  adaptações  e  extensões  dos  originais  gentilmente  cedidos  pelo 

Considera-se que a interdisciplinaridade contribui para uma visão mais ampla do fenômeno a ser pesquisado. Esse diálogo entre diferentes áreas do conhecimento sobre

Partição - operação de divisão do disco rígido necessária para a instalação do Linux e implica a perda de todos os dados do mesmo. Existem 2 formas de criar partições durante

O termo extrusão do núcleo pulposo aguda e não compressiva (Enpanc) é usado aqui, pois descreve as principais características da doença e ajuda a

Diante do exposto, este trabalhou visou o desenvolvimento de sistemas microemulsionados contendo o extrato de casca de bacaba, bem como, a sua potencial