首页 > 解决方案 > Ackermann 函数导致超出最大调用堆栈大小错误

问题描述

在 React 库中,我正在编写一个计算 Ackermann 函数的算法程序。

对于像这样的一些输入n=4m=1我得到一个

RangeError:超出最大调用堆栈大小。

需要一些帮助来避免此错误。

ackermannCalc(n, m) {
        while (n !== 0) {
            if(m === 0){
                m = 1;
            } else {
                m = this.ackermannCalc(n, m - 1);
            }
            n = n - 1;
        }
        return m + 1;
}

标签: javascriptrecursion

解决方案


推荐阅读