public void insert(int data) {
if (root == null) root = new AVLNode(data);
else {
AVLNode node = root;
while (node != null) {
if (node.data <= data) {
node = node.right;
}
else {
node = node.left;
}
}
node = new AVLNode(data);
}
}
Я пытаюсь создать двоичное дерево поиска (нерекурсивное), а затем получить доступ и выполнить предварительный обход, но когда я печатаю root, я получаю только 1 элемент.все вставки работают, я думаю, но тогда root просто имеет первую вставку в нем, и его левый и правый ничего не значат, я думаю, поэтому я получаю только 1 элемент.Как я могу сослаться корень на вершину дерева узлов?вот класс узла между прочим
class AVLNode
{
AVLNode left, right;
int data;
/* Constructor */
public AVLNode()
{
left = null;
right = null;
data = 0;
}
/* Constructor */
public AVLNode(int n)
{
left = null;
right = null;
data = n;
}
}