LeetCode 53 - Maximum Subarray
Difficulty: medium
Problem Description
English (Maximum Subarray)
Given an integer array nums
, find the subarray with the largest sum, and return its sum.
Example 1:
1 |
|
Example 2:
1 |
|
Example 3:
1 |
|
Constraints:
1 <= nums.length <= 10^5
-10^4 <= nums[i] <= 10^4
Follow up: If you have figured out the O(n)
solution, try coding another solution using the divide and conquer approach, which is more subtle.
Chinese (最大子数组和)
给你一个整数数组 nums
,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
子数组 是数组中的一个连续部分。
示例 1:
1 |
|
示例 2:
1 |
|
示例 3:
1 |
|
提示:
1 <= nums.length <= 10^5
-10^4 <= nums[i] <= 10^4
进阶:如果你已经实现复杂度为 O(n)
的解法,尝试使用更为精妙的 分治法 求解。
Solution
C++
1 |
|
It’s also available to initialize fragment_sum
with nums[0]
as below code, but I prefer the above way due to the integrated for-range loop. :)
1 |
|
LeetCode 53 - Maximum Subarray
http://wasprime.github.io/Algorithm/LeetCode/DynamicProgramming/LeetCode-53-Maximum-Subarray/