思路 1.计算数组中到当前元素的最大和,并存在该数组; 2.遍历数组找出最大元素所在位置。 代码 class Solution { public: int maxSubArray(vector<int>& nums) { int n=nums.size(); int max=nums[0]; for(int i=1;i<n;i++) { if(nums[i-1]>0)nums[i]+=nums[i-1]; else continue; } for(int i=1;i<n;i++) {max=max>nums[i]?max:nums[i];} return max; } };