博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode 53 最大子序和 (Maximum Subarray)
阅读量:4986 次
发布时间:2019-06-12

本文共 674 字,大约阅读时间需要 2 分钟。

class Solution {public:    int maxSubArray(vector
& nums) { int pre=nums[0]; //int now; int maxSum=nums[0]; for(int i=1;i
0){ pre+=nums[i]; } else{ pre=nums[i]; } if(pre>maxSum){ maxSum=pre; } } return maxSum; }};
View Code

如果之前的和大于0,那么加上它。否则,舍弃,pre为当前数。

如果加了之后比已知的最大和大,那么最大和是加了之后的和。

……我也忘了怎么想出来的。

 动态规划嘛,从1到n。找出i+1相对于i的变化。

如果前面的和 < 0,前面没有。

大于0,那么好,加上。

最大和用maxSum保存,然后比较加上是否比它大。

 


 

还可以用分治,O(nlogn)

 

转载于:https://www.cnblogs.com/azureice/p/leetcode53.html

你可能感兴趣的文章
[python]新手写爬虫v2.5(使用代理的异步爬虫)
查看>>
《Java开发手册》学习进程之第8章继承
查看>>
Maximum Depth of Binary Tree
查看>>
一个Jquery上传文件插件
查看>>
测试用例评审
查看>>
工具-各种开源
查看>>
HTML5-盒子的使用
查看>>
Swift之单例模式
查看>>
20180918-2 每周例行报告
查看>>
网站目录文件权限的简单安全设置
查看>>
android分享到代码
查看>>
Android 屏幕切换效果实现 (转)
查看>>
我的2015技术学习流水账
查看>>
JQuery上传插件Uploadify使用详解
查看>>
python 批量更改文件名
查看>>
DRF频率、分页、解析器、渲染器
查看>>
LeetCode(11)题解: Container With Most Water
查看>>
【uva11987】带删除的并查集
查看>>
Redis设置认证密码
查看>>
终于有人把P2P、P2C、O2O、B2C、B2B、C2C的区别讲透了!还有许多其它类别的类型分享...
查看>>