Ciao![]()
Devo scrivere un metodo che aggiunga un nodo ad un albero binario.
Avevo pensato ad una cosa del genere ma non funziona, più che altro non so come completare il metodo..codice:public class BinaryTree { protected class Node { Integer element; Node left; Node right; Node(int element) { this.element = element; left = right = null; } Node(int element, Node left, Node right) { this.element = element; this.left = left; this.right = right; } boolean isLeaf() { return left == null && right == null; } } protected Node root; public BinaryTree() { root = null; } public boolean isEmpty() { return root == null; } /* Aggiunge un nodo nella posizione indicata da path */ public void add(int element, String path) { add(element, path, ?? ); } protected Node add(int elem, String path, Node nd) { if(nd == null) return new Node(elem); else { if(path.length() == 0) nd.element = elem; else { char go = path.charAt(0); String nextPath = path.substring(1); if (go == 'L') nd.left = add(elem, nd.left, nextPath); else if(go == 'R') nd.right = add(elem, nd.right, nextPath); else System.out.println("Path inadeguato"); } } return nd; } }
Chi mi aiuta?
Grazie![]()


Rispondi quotando