Binary Search Tree 方法一直运行到 java.lang.NullPointerException。我该怎么办?

问题描述 投票:0回答:0

二叉搜索树看起来像: [1]: https://i.stack.imgur.com/lrhxx.png

  void wordsAtDepth() {
        int depth = 1;
        Queue queue = new Queue(32);
        queue.insert(root);

        if(root == null){
            return;
        }

        System.out.print(queue.peekFront().cData);
        System.out.println(" ");

        while (!queue.isEmpty()) {
            for(int i = 0; i < depth; i++){
                Node Current = queue.remove();
                queue.insert(Current.leftChild);
                queue.insert(Current.rightChild);
                if(Current.leftChild != null){
                    System.out.print(Current.leftChild.cData);
                }
                if(Current.rightChild != null){
                    System.out.print(Current.rightChild.cData);
                }
            }
            System.out.println(" ");
            depth = 2^depth;
        }
    }

印花: 欧 知识产权 AMT 大号 这是正确的,但我在 Node Current = queue.remove(); 处遇到“线程“主”java.lang.NullPointerException 中的异常”;

我尝试从队列中删除空值,当它们在前面并添加一个中断时,但最后一个节点打印了 3 行。

java queue binary-search-tree
© www.soinside.com 2019 - 2024. All rights reserved.