sábado, 14 de junho de 2014

Implementando árvore binária - parte 2

Neste post terminaremos nossa classe de árvore binária.O diagrama de classe que teremos está indicado abaixo:

Vemos que na classe de Arvore somente precisamos armazenar a raiz da árvore. As demais ligações são obtidas a partir dos atributos Esq e Dir em No. No vídeo veremos como implementar

  • pesquisar(): que verificar se existe na árvore um nó com um determinado valor, retornando o nó se este existir ou nulo se não existir
  • balancear(): como nosso procedimento de inserção não insere os valores de forma balanceada, temos que criar um procedimento que faz o balanceamento da árvore (reduz a altura da árvore ao mínimo)
  • toString(): gera a árvore como uma string para que possamos apresentar o conteúdo dela
  • altura(): que retorna a altura da árvore.



Se vocês analizarem o método de balanceamento, irão ver que existe um problema. O que acontece se existem elementos repetidos na árvore?

Nenhum comentário:

Postar um comentário