• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

p_inacio

Construir uma arvore com uma lista

2 mensagens neste tópico

Boas pessoal, estou com um problema q e o seguinte...

Carreguei uma lista para a memoria, agr ao partila ao meio encontro a raiz mas com as sublistas queria fazer o mm processo a fim de achar os respectivos filhos direito e esquerdo para dps ter um apontador da arvore para estes elementos da lista.. alguem me pode dar ideias para resolver o problema de encontrar os filhos ?

se L -> 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7...

4 e raiz. do lado esquerdo aponta para 2 e do lado direito para 6

2 do lado esquerdo aponta para 1 e do lado direito para 3

6 do lado esquerdo aponta para 5 e do lado direito para 7

Obrigado a toda a ajuda que for prestada  ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Para resolveres este problema vais ter de jogar com as operações de quociente e resto da divisão inteira do tamanho do vector por 2, tendo de prever o caso em que o vector tem tamanho par, em que tem tamanho ímpar e quando apenas tem 1 elemento. Terás de usar recursividade e talvez dê jeito usar 2 vectores auxiliares que vão guardar os valores que estão antes e depois do valor a inserir no nó da árvore em cada chamada recursiva.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora