链接:https://www.nowcoder.com/PRactice/32139c198be041feb3bb2ea8bc4dbb01?tpId=46&tqId=29126&tPage=1&rp=1&ru=/ta/leetcode&qru=/ta/leetcode/question-ranking 来源:牛客网
题目描述
Find the contiguous subarray within an array (containing at least one number) which has the largest sum. For example, given the array[−2,1,−3,4,−1,2,1,−5,4], the contiguous subarray[4,−1,2,1]has the largest sum =6. click to show more practice. More practice: If you have figured out the O(n) solution, try coding another solution using the divide and conquer approach, which is more subtle.
class Solution {public: int maxSubArray(int A[], int n) { int v = 0; int result = INT_MIN; for(int i=0;i<n;++i) { v = max(v+A[i],A[i]); result = max(result,v); } return result; }};新闻热点
疑难解答