解題思路
當探訪下一個 array 中的 element 時,要選擇把最大 subarray 的範圍包含進該 element,還是說以該 element 為起點重新計算?
決定完後,再把 element 值更新為當前最大 subarray 的總和值。
程式碼
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int ans = nums[0];
for(int i=1; i<nums.size(); i++)
{
nums[i] = max(nums[i], nums[i] + nums[i-1]);
ans = max(ans, nums[i]);
}
return ans;
}
};
沒有留言:
張貼留言