Я не знаю, почему мне нужно снова назначить node.left = insert(node.left, data)
, поскольку я назначил его с помощью node = new BNode(data)
.Реализация BST в Java рекурсивно
private BNode insert(BNode node, int data) {
if (node == null) {
node = new BNode(data);
}
else if (node.data < data) {
node.left = insert(node.left, data);
}
else if (node.data > data) {
node.right = insert(node.right, data);
}
return node;
}
Я не знаю формат для вставки моего кода. Поэтому я вставляю его здесь. – Jutta
частный BNode вставка (BNode узел, внутр данные) \t { \t \t если (узел == NULL) \t \t { \t \t \t узел = новый BNode (данные); \t \t} \t \t иначе, если (node.data <данные) \t \t { \t \t \t node.left = вставка (node.left, данные); \t \t} \t \t иначе, если (node.data> данные) \t \t { \t \t \t node.right = вставки (node.right, данные); \t \t} \t \t возвратный узел; \t \t \t} – Jutta
Мне очень жаль, но мне стоит час настроить формат. – Jutta