我正在運行一個我在Eclipse中用Java編寫的程序。該程序對於非常大的輸入具有非常深的遞歸級別。對於較小的輸入程序運行正常時,卻給出了大投入,我得到以下錯誤:Java堆棧溢出錯誤 - 如何在Eclipse中增加堆棧大小?
Exception in thread "main" java.lang.StackOverflowError
這個問題能得到解決,通過增加Java堆棧大小,如果是這樣,我怎麼做這在Eclipse?
更新:
@喬恩飛碟雙向
的代碼是爲了建立一個數據結構遞歸遍歷解析樹。因此,例如,代碼將使用分析樹中的一個節點來做一些工作,並在節點的兩個子節點上調用它自己,並將它們的結果組合起來以給出樹的總體結果。
遞歸的總深度取決於解析樹的大小,但代碼似乎失敗(沒有更大的棧)時,遞歸調用的次數進入了1000。
而且我敢肯定,因爲一個錯誤的代碼不會失敗,因爲它適用於小的投入。
這裏有什麼錯... stackoverflow(.com)不是錯誤! :-) – 2010-01-24 14:37:31