【发布时间】:2020-07-11 13:34:07
【问题描述】:
我在编写这个算法时遇到了麻烦,但我认为我很好地掌握了它,但一直失败。该算法应该返回给定范围的数组的最小连续和。例如,假设数组是这样的:[1, 3, 4, 2, -1, 5, -1, 1]。该函数接收一个范围。对于此示例,假设范围为 3。目标是找到总和最小的 3 个连续元素。在上面的示例中,它将是 3。因为 -1 + 5 + -1 是给出最小总和的 3 个连续元素。
算法伪代码:
def least_sum_search(length,dictionary):
least_sum = 0
max_range = 283
for i in dictionary:
sum = 0
look_ahead = length
index = i
if i + length > max_range:
break
while(look_ahead > 0):
sum += dictionary[index]['price']
index += 1
look_ahead -= 1
if(least_sum > sum):
least_sum = sum
return least_sum
你们会怎么写这个算法?我个人认为我想多了。 感谢阅读!
【问题讨论】:
标签: arrays algorithm range min