Van egy tömböt, amelyek ahhoz AZ. Csodálkoztam, hogy a legjobb módja annak, hogy megy a válogatás őket kiegyensúlyozott bináris kereső fába. A kezdeti gondolat, hogy osztott a tömb fel az első félidőben, a második felét, majd rendezni őket egyenként.
Nem kellene, hogy képes legyen használni rekurzív módon, hogy ketté félbe, hogy a következő csomópont a fát? Egyszerűen nem tudok fejem körül, és most gondoltam volna kérni, ha valaki volt olyan ötleteket. vezet engem a helyes irányba, vagy néhány példát. Kösz!
Én használ saját BinaryTree Class és BinaryTreeNode Class. EDIT:
public class BinaryTree {
private BinaryTreeNode root;
public void insert(String text) {
root = insertNode(root, text);
}
private BinaryTreeNode insertNode(BinaryTreeNode curNode, String text) {
if (curNode == null) {
BinaryTreeNode newNode = new BinaryTreeNode(text);
//newNode.value = text;
return newNode;
} else {
if (text.compareTo(curNode.value) < 0 ) {
//left child
//use of recursion to properly place Node
curNode.left = insertNode(curNode.left, text);
return curNode;
}
else {
//right
//use of recursion to properly place Node
curNode.right = insertNode(curNode.right, text);
return curNode;
}
}
}
public BinaryTreeNode getRoot() {
return root;
}
public void setRoot(BinaryTreeNode root) {
this.root = root;
}
}
lenne ez tekinthető önkiegyensúlyozást bináris keresési fa?













