сортированное бинарное дерево, заклеенное петлей (рекурсия) - PullRequest
0 голосов
/ 14 сентября 2018
private void createSortedBT2(int index, BinaryTree<Country> cNode){
    if(index >= 0){
        if(db.getCountry(index).isLess(cNode.getContent())){
            if(cNode.getLeftTree().isEmpty()){
                cNode.getLeftTree().setContent(db.getCountry(index));
            }else{
                createSortedBT2(index, cNode.getLeftTree());
            }
        }else if(db.getCountry(index).isGreater(cNode.getContent())){
            if(cNode.getRightTree().isEmpty()){
                cNode.getRightTree().setContent(db.getCountry(index));
            }else{
                createSortedBT2(index, cNode.getRightTree());
            }
        }
        createSortedBT2(index-1, bt);
    }
}

Привет, я хотел знать, почему этот метод застрял в цикле.Я использую IDE, где я могу проверить BinaryTree и все в правильном положении, но он застрял как-то.Он также не показывает никаких стековых потоков или исключений nullpointerexceptions.Индекс инициализируется с 18 и cNode с пустым корнем (db является массивом, и все методы работают).(Я знаю, что дерево не сбалансировано, но это была задача, которую мы должны были выполнить в любом случае).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...