Всем привет! Изучаю Java подошел к бинарным деревьям, читал статьи на Хабре и тд.. Все как бы понятно, но вот проблема, как вывести бинарное дерево т.е. у меня пустое дерево и как его заполнить если вводить с консоли и как вывести в ширину? Использовал примеры кода, вот пример ввода, но как правильно вывести в ширину, что бы получилось красивое дерево с выводом в консоль? Используя етот ввод и когда пытался вывести получалось как то что то не то.
public void add(T1 k, T2 v) {
Node<T1, T2> x = root, y = null;
while (x != null) {
int cmp = k.compareTo(x.key);
if (cmp == 0) {
x.value = v;
return;
} else {
y = x;
if (cmp < 0) {
x = x.left;
} else {
x = x.right;
}
}
}
Node<T1, T2> newNode = new Node<T1, T2>(k, v);
if (y == null) {
root = newNode;
} else {
if (k.compareTo(y.key) < 0) {
y.left = newNode;
} else {
y.right = newNode;
}
}
}