Neste projeto, vamos trabalhar com os percursos em árvore binária de busca.

DEFININDO AS APLICAÇÕES

Vamos desenvolver um programa que recebe um percurso do usuário, recebe uma árvore binária com elementos e mostra a lista na ordem solicitada pelo usuário.

Para isso, vamos montar um menu de opções, serão três opções:

  1. Em Ordem;
  2. Pré Ordem;
  3. Pós Ordem.

Observando a imagem seguinte da árvore binária:

Vamos desenvolver um módulo para cada percurso e apresentar o percurso de acordo com a opção selecionada pelo usuário.

Realizando o percurso da árvore da imagem anterior, temos:

OPERAÇÕES DAS APLICAÇÕES

Desenvolva um algoritmo que recebe do usuário cinco números inteiros numa pilha com capacidade para cinco números e os mostra.

public void emOrdem (No  ABB){
	if (ABB != nulo){
		emOrdem(ABB.esquerda);
		visita(ABB);
		emOrdem(ABB.direita);
	}
}
public void preOrdem (No  ABB){
	if (ABB != nulo){
		visita(ABB);
		preOrdem(ABB.esquerda);
		preOrdem(ABB.direita);
	}
}
public void posOrdem (No  ABB){
	if (ABB != nulo){
		posOrdem(ABB.esquerda);
		posOrdem(ABB.direita);
		visita(ABB);
	}
}

EXERCITANDO AS APLICAÇÕES

Para que cada um dos métodos de percurso pré-ordem, pós-ordem e em ordem em uma árvore binária possa ser executado, temos que realizar sua chamada adequada em um método principal, no caso do Java, no void main.

Vamos observar o método main com a escolha da opção e a chamada de cada percurso.