Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 最大连续和算法的实现_Algorithm_Lua - Fatal编程技术网

Algorithm 最大连续和算法的实现

Algorithm 最大连续和算法的实现,algorithm,lua,Algorithm,Lua,这是我的密码。 但我得到了这个错误信息: function maxContSum(array) local len = #array local maxSum = 0 local runningSum = array[0] local j = 0 local start, finish = 0,0 for i=0, len-1,1 do if runningSum > 0 then runningSum

这是我的密码。 但我得到了这个错误信息:

function maxContSum(array)
    local len = #array
    local maxSum = 0
    local runningSum = array[0]
    local j = 0
    local start, finish = 0,0
    for i=0, len-1,1 do
        if runningSum > 0 then
            runningSum =runningSum + array[i]
        else 
            runningSum = array[i]
            j = i
        end
        if runningSum > maxSum then
            maxSum = runningSum
            start = j
            finish = i
        end
    print ("maxsum is ", maxSum)
   end
end

a = {-2, 2,3,4,5,-7,8,0,-1,1,2,3,4}
maxContSum(a)
需要帮助吗 谢谢大家!

编辑: 我发现了我的问题。
Lua数组索引从1开始:)

Lua中的数组是从1而不是从0索引的

local runningSum=array[0]
应该是
local runningSum=array[1]
还有
j=1

而的
循环应该从1到n开始

lua: maxContSum.lua:8: attempt to compare number with nil stack
traceback:
        maxContSum.lua:8: in function 'maxContSum'
        maxContSum.lua:24: in main chunk
        [C]: ?

发现问题后,如果可以的话,您也可以删除该问题(或者标记为删除)。否。您应该在下面的“答案”中为您的问题写一个答案。
for i = 1, len, 1 do