我正在研究 Java 二叉搜索樹,我正在嘗試findHelp()在find(). 我期待的返回值rt.getValue()(即C2-112,因為我在返回之前打印出來),但findHelp()在 help 方法中打印出來返回null。我在網(wǎng)上找不到類似的錯誤,所以有人可以幫我弄清楚,或者給一個類似問題的鏈接嗎?這是我的代碼private E findHelp(BinaryNode<Key, E> rt, Key k) { int compare = k.compareTo(rt.getKey()); if (compare==0) { System.out.println(rt.getValue()); // I'm getting C2-112 here return rt.getValue(); // so I expect a return of C2-112 } else if (compare >0 ) { if (rt.getRight() == null) { return null; } else { findHelp(rt.getRight(), k); } } else { if (rt.getLeft() == null) { return null; } else { findHelp(rt.getLeft(), k); } } return null; } // public E find(Key k) { E tmp = findHelp(root, k); System.out.println(tmp); // this prints null, not C2-112 return findHelp(root, k); // and so I return null }
添加回答
舉報
0/150
提交
取消