árvores binárias são estruturas de dados complexos usados em programas de computador para armazenar os dados na memória usando um algoritmo de armazenamento comum. Ao utilizar este tipo de algoritmo , os dados podem ser armazenados em um padrão estável , tornando a recuperação e busca de dados através de mais fácil . Programadores Java que estão projetando árvores binárias são mais do que provável que também projetar algoritmos para atravessar essas estruturas de dados. Há três maneiras de percorrer árvores binárias : pré- ordem e pós- ordem em ordem . Coisas que você precisa
Java Development Kit ( JDK)
Editor de Texto
Show Mais instruções
1
percorrer a árvore binária usando travessia em ordem . Supondo-se que a classe "BT " representa uma árvore binária , o código a seguir mostra como imprimir a árvore em ordem . Cada nó tem um ponteiro esquerdo e direito que aponta para os nodos da esquerda e da direita do nó actual , juntamente com um item de dados que representa o seu valor . A travessia em ordem irá percorrer o nó esquerdo primeiro , até bater nulo, ea impressão do nó pai antes de atravessar para a direita e começar de novo . Os meios de que qualquer nó só vai imprimir se todos os seus nós filhos do lado esquerdo têm impresso pela primeira vez :
public class BT {
public void para agradar (Node x ) {
if ( x == null ) {return //pára a recursão quando não há Node }
para agradar ( x.left ) //sempre atravessar x.data firstprint esquerda ; //imprime os dados de uma vez o returnsinOrder nó à esquerda ( x.right ) //transversal direita }
2
percorrer a árvore em pré- ordem. Esta ordem é semelhante ao em ordem, exceto que a impressão do nó vem antes de qualquer travessia . Assim , o nó irá imprimir o seu valor e , em seguida, atravessar para a esquerda. Então , quando a recursividade retorna ao nó após ter atravessado a esquerda , o nó irá então atravessar direita . Isso significa que o nó será sempre imprimir -se antes de qualquer nós filho de impressão :
Preorder public void (Node x ) {
if ( x == null ) {return //pára a recursão quando não há nenhum nó }
impressão x.data //printinOrder ( x.left ) //leftinOrder travessia ( x.right ) //transversal direita }
3
percorrer a árvore de pós- ordem. Este é o oposto da travessia pré- ordem. Um nó vai sempre olhar para seus nós de esquerda ou para a direita antes de imprimir em si , o que significa que todos os outros nós filhos abaixo ele irá imprimir primeiro :
pós-ordem public void (Node x ) {
if ( x == null ) {return //pára a recursão quando não há Node }
para agradar ( x.left ) //leftinOrder travessia ( x.right ) //travessia rightprint x.data //print}