【发布时间】:2021-01-20 14:10:33
【问题描述】:
我有一个递归函数,它在最后计算一些答案,我必须存储这些临时答案中的最大值并返回它。
代码如下。
(如果你知道这个,我不担心 Kadane 的算法,我想知道如何完成这个)
class Solution:
def maxSubArray(self, nums: List[int]) -> int:
ans = nums[0]
def helper(n):
global ans
if(n == 1):
return nums[0]
temp = max(nums[n-1], nums[n-1]+helper(n-1))
ans = max(ans, temp) ### how do I do this? ###
return temp
helper(len(nums))
return ans
我得到的错误是:
NameError: name 'ans' is not defined
在这种情况下如何存储最大值并返回?因为这不起作用。
【问题讨论】:
-
因为第一次尝试使用时没有全局
ans
标签: python recursion nameerror