LeetCode Maximum Subarray
来源:互联网 发布:马尔可夫 python 编辑:程序博客网 时间:2024/05/17 02:05
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
.
题意:给出一数组,求最大子数组和(要求至少取一个元素)
思路:用动态规划方法,用dp(i)表示从0到i之间的最大子数组和,状态转移方程为dp(i)=dp(i-1) > 0 ? dp(i-1)+a[i] : a[i]
代码如下:
class Solution { public int maxSubArray(int[] nums) { int max = Integer.MIN_VALUE; int sum = 0; int len = nums.length; for (int i = 0; i < len; i++) { if (sum > 0) sum += nums[i]; else sum = nums[i]; max = Math.max(max, sum); } return max; }}
0 0
- 【LeetCode】Maximum Subarray 和 Maximum Product Subarray
- LeetCode: Maximum Subarray
- LeetCode Maximum Subarray
- [Leetcode] Maximum Subarray
- LeetCode: Maximum Subarray
- leetcode 25: Maximum Subarray
- [LeetCode] Maximum Subarray
- [Leetcode] Maximum Subarray
- [LeetCode]Maximum Subarray
- [leetcode]Maximum Subarray
- LeetCode-Maximum Subarray
- [leetcode] Maximum Subarray
- LeetCode 45: Maximum Subarray
- LeetCode - Maximum Subarray
- LeetCode:Maximum Subarray
- LeetCode 53: Maximum Subarray
- 【leetcode】Maximum Subarray
- Leetcode Maximum Subarray
- 安卓学习之路(一)
- 电话本
- appium简明教程-整理版
- poj3667(线段树区间合并)
- Visual Studio 2012 Ultimate 下载和密钥以及配置文件的导入
- LeetCode Maximum Subarray
- android animation
- POJ3154(Graveyard)
- HDU 2085 核反应堆(水)
- [转]简单介绍如何使用robotium进行自动化测试
- 模板方法模式
- ioS开发之UI基础--NSRunLoop了解
- 使用 maven 构建 全注解spring+ hibernate4 + struts2 项目
- linux大杂烩