Поиск в ширину - исключение Nullpointer - PullRequest
0 голосов
/ 04 июня 2018

Я реализовал поиск в ширину для школьного проекта, где я получаю начальный узел графа направленности в качестве входных данных, и мне нужно вернуть связанный список, содержащий узлы в порядке BFS

Этомой подход:

public List<Node> breadthFirstSearch(Node startNode){

    //node list that has to be returned  
    LinkedList<Node> nodeList = new LinkedList<Node>();

    resetState();

    // TODO

    //Queueu for the DfS Algorithm 
    Queue<Node> nodeQueue = new LinkedList<Node>();

    //Add start node to NodeList and Queue
    nodeQueue.add(startNode);
    nodeList.add(startNode);

    //While the Queue isn't empty
    while(!nodeQueue.isEmpty()) {
        Node v = nodeQueue.poll();
        //iterate over adjacent nodes of current node and add them to Queue and List 
        for (Node w : getAdjacentNodes(v)) {
            //don't add if already traversed node
            if (!nodeList.contains(w)) {
                nodeList.add(w);
                nodeQueue.add(w);
            }
        }
    }

    return nodeList;
}

Я проверил свою функцию на нескольких графиках, и я не получил никаких ошибок в своих собственных тестах.Но когда я загружаю свой код на школьные серверы и они запускают свои тесты, я получаю следующую ошибку: java.lang.NullPointerException in SearchTestng.testBFSCliqueNodes(SearchTestng.java:512) Я пытаюсь воспроизвести проблему уже несколько часов, и, похоже, ни один из моих преподавателей не знает, что может быть причиной исключения.

Кто-нибудь из вас имеет представление о том, что может вызвать здесь исключение нулевого указателя?

...