题目来源:
leetcode题目,网址:面试题 16.17. 连续数列 - 力扣(LeetCode)
解题思路:
动态规划。对第 i 个元素而言,若以前一个元素为结尾的连续序列最大和小于 0 ,则以当前元素为结尾的连续序列最大和为其本身,否则为二者之和。
解题代码:
class Solution {
public int maxSubArray(int[] nums) {
int pre=nums[0];
int res=pre;
for(int i=1;i<nums.length;i++){
pre=Math.max(pre+nums[i],nums[i]);
res=Math.max(res,pre);
}
return res;
}
}
总结:
分治思想没想出来。
官方题解给出了动态规划和分治两种解法。分治法是递归得到结果。