Rapaiz, se você nunca se deparou com uma situação dessas e ainda quer trabalhar com desenvolvimento, corra para fazer a sua faculdade…
Uma dica: pesquise sobre árvores binárias e seus algoritmos de caminho entre os nós…
[]'s.
S
sivoleu
:oops: Então acho que devo desistir dessa idéia pois não tenho condições de fazer uma faculdade e o pouco que aprendi foi com o Google e em alguns livros que consegui.
S
sivoleu
Depois de uma pesquisa no livro do deitel e algum tempo raciocinando acho que encontrei uma solução.
Segue:
AdvancedTree.java
/* * To change this template, choose Tools | Templates * and open the template in the editor. */packagecom.wordpress.sivoleu;importjava.util.ArrayList;importjava.util.List;/** * * @author Clovis Terruel */publicclassAdvancedTree{privateAdvancedTreeNoderoot;publicAdvancedTree(){root=null;}publicsynchronizedvoidinsertNode(intnode,intvalue){if(root==null)root=newAdvancedTreeNode(node);elseroot.insertValue(node,value);}publicsynchronizedvoidprintInPreorder(){printInPreorderHelper(root);}privatevoidprintInPreorderHelper(AdvancedTreeNodenode){if(node==null)return;System.out.println("\nPai: "+node.data);if(node.atreeNode.size()!=0){for(inti=0;i<=node.atreeNode.size()-1;i++){System.out.println("Filho: "+node.atreeNode.get(i).data);}}elseSystem.out.println("Filho: Não possui Filho(s)");for(inti=0;i<=node.atreeNode.size()-1;i++){printInPreorderHelper(node.atreeNode.get(i));}}}classAdvancedTreeNode{intdata;List<AdvancedTreeNode>atreeNode;publicAdvancedTreeNode(intnodeValue){data=nodeValue;atreeNode=newArrayList<AdvancedTreeNode>();}publicsynchronizedvoidinsertValue(intnode,intvalue){if(this.data==node){AdvancedTreeNodeaTreeNodeE=newAdvancedTreeNode(value);atreeNode.add(aTreeNodeE);}else{for(inti=0;i<=atreeNode.size()-1;i++){atreeNode.get(i).insertValue(node,value);}}}}
Tá quase lá.
Antes de entender arvore binária tem que entender arvore (Tree)
Vc chegou no conceito. A arvore é um encadeamento de nós. Um nó tem um conjunto de nós. ( è aqui que está a recursividade edida no enunciado).
A sacada é que a arvore não existe e apenas nós existem. Portanto só precisa implementar um classe.
O resto é programação simples.
Experimente generalizar o seu tree. Permita que use qq Object no estilo de List ou Map.
Algo assim