我正在處理文本文件,這些文件有很長的單詞列表並將它們插入二進制樹中。我擁有的一個文本文件是未排序的單詞列表,並且它完美地插入BST。但是排序形式完全相同的單詞列表給我帶來麻煩。我不斷從我的插入函數中得到一個StackOverflowError。麻煩在Java中插入到BST中
private TreeNode insert(TreeNode iter, String item) {
if (iter == null) {
iter = new TreeNode(item);
} else {
if (item.compareTo(iter.item) < 0) {
iter.left = insert(iter.left, item);
} else {
iter.right = insert(iter.right, item);
}
}
return(iter);
}
我的理論是,因爲它是爲了它只會調用插入權利,導致它以某種方式溢出。如果有人有任何想法如何解決這個問題,這將是美好的!