1、题目如下:
2、个人Python代码实现(未实现)
这里使用暴力破解,使用2个循环用于记录每个切片元素求和的最大值。失败主要是用例元素过多,导致用例超时。
3、理解Python题解代码后实现
总体代码思路理解如下:
1、使用temp记录当前连续子数组和,使用res记录连续子数组和的最大值
2、如果当前连续子数组和小于0,则意味着当前连续子数组一定不在最大值的连续子数组
中。例如[-1,-2,1,2],连续子数组[-1, -2]和为-3,加上后面的元素,和一定小于后面的元素,所以[-1, -2]不在最大子数组[1,2]中;同理,[2,-3,1,2],连续子数组[2, -3],由也不再[1,2]中间。所以当前连续子数组和小于0时,应该从后面的元素重新开始求和,也就是截图中间第9、10行代码。
4、其他思路
这个思路跟题库第64题最小路径和((10条消息) 力扣题库刷题笔记64-最小路径和_鱼塘的鱼呢的博客-CSDN博客)是一个思路,更新列表中当前元素为和前一个元素和的较大值