28 lines
701 B
Java
28 lines
701 B
Java
// Source : https://leetcode.com/problems/maximum-subarray/
|
|
// Author : Ikshit Agrawal
|
|
// Date : 2020-10-04
|
|
/*
|
|
Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.
|
|
Example 1:
|
|
Input: nums = [-2,1,-3,4,-1,2,1,-5,4]
|
|
Output: 6
|
|
Explanation: [4,-1,2,1] has the largest sum = 6.
|
|
|
|
Example 2:
|
|
Input: nums = [1]
|
|
Output: 1
|
|
*/
|
|
class Solution {
|
|
public int maxSubArray(int[] nums) {
|
|
int max1=nums[0],cur=0;
|
|
for(int i :nums)
|
|
{
|
|
if(cur<0)
|
|
cur=0;
|
|
cur+=i;
|
|
max1=Math.max(max1,cur);
|
|
}
|
|
return max1;
|
|
}
|
|
}
|