Я запускаю программу, написанную на Java в Eclipse. Программа имеет очень глубокий уровень рекурсии для очень больших входных данных. Для небольших входных данных программа работает нормально, однако, когда даются большие входные данные, я получаю следующую ошибку:
Exception in thread "main" java.lang.StackOverflowError
Можно ли решить эту проблему, увеличив размер стека Java, и если да, то как это сделать в Eclipse?
Обновление:
@Джон Скит
Код рекурсивно обходит дерево синтаксического анализа для создания структуры данных. Так, например, код выполнит некоторую работу, используя узел в дереве синтаксического анализа, и вызовет сам себя для двух дочерних узлов, объединив их результаты, чтобы получить общий результат для дерева.
Общая глубина рекурсии зависит от размера дерева синтаксического анализа, но код, похоже, дает сбой (без большего стека), когда количество рекурсивных вызовов достигает 1000.
Также я почти уверен, что код не работает из-за ошибки, поскольку он работает для небольших входных данных.