gpt4 book ai didi

algorithm - 最大连续和算法的实现

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:49:14 26 4
gpt4 key购买 nike

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: maxContSum.lua:8: attempt to compare number with nil stack
traceback:
maxContSum.lua:8: in function 'maxContSum'
maxContSum.lua:24: in main chunk
[C]: ?

需要帮助谢谢!

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

最佳答案

lua 中的数组是从 1 而不是从 0 开始索引

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

for 循环应该从 1 到 n

for i = 1, len, 1 do

关于algorithm - 最大连续和算法的实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12908195/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com