题目
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
示例:
输入: [-2,1,-3,4,-1,2,1,-5,4]
输出: 6
解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。
算法思想
贪心思想:选择当前最优的存储到sum中
函数输入一个数组,输出一个最大值
定义一个存储当前指向元素值的ans
,
定义一个用于存储当前指向元素之间的元素和的sum
首先: 将第一个元素赋给ans
,
然后: 依次遍历数组将元素赋给ans
,将遍历到的每一个ans
值之前的元素进行相加为sum
,
如果:sum
大于0则将当前元素ans
相加到sum
中,
否则:sum
小于等于0则将sum
丢弃,将当前指向的元素ans
存储到sum
中。