我正在编写一个函数来查找三角形数字,并且以递归方式编写它的自然方式:
function triangle (x) if x == 0 then return 0 end return x+triangle(x-1) end
但是尝试计算前100,000个三角形数字会在一段时间后出现堆栈溢出而失败.这是一个理想的memoize函数,但我想要一个能够记忆我传递给它的任何函数的解决方案.
optimization recursion lua closures memoization
closures ×1
lua ×1
memoization ×1
optimization ×1
recursion ×1