众所周知,所有大多数递归函数都可以修改为迭代方法。假设我们以添加两个表示两个巨大数字的链接列表为例。这个问题可以通过递归(使用系统堆栈)或迭代(显式堆栈使用)方法来解决。
我的疑问是,如果我已经给出了 jvm 堆大小,-Xms2048MB -Xmx2048M
那么在递归方法中它是否会将所有堆内存用于系统堆栈?AFAIK,如果我将使用显式堆栈,那么它可以消耗所有这些内存。如果有人还可以告诉我如何、何时以及分配多少系统堆栈内存以及一些工作原理,那就太好了。即使指向一些不错的教程也会有很大帮助。如果可以将其限制在java
世界范围内,那就更好了。谢谢。