剑指Offer-31-连续子数组的最大和
来源:互联网 发布:盟军苏军将领知乎 编辑:程序博客网 时间:2024/05/16 15:28
题目:
输入一个整型数组,数组里有正数也有负数。数组中一个或连续的多个整数组成一个子树组。求所有子数组的和的最大值。要求时间复杂度为O(n)。
例如输入的数组为{1,-2,3,10,-4,7,2,-5},和最大的子数组为{3,10,-4,7,2,},因此输出为该子数组的和18
思路:动态规划
假设f(i)为以第i个数字结尾的子数组的最大和,那么
f(i)=A[i], f(i-1)<=0
f(i)=f(i-1)+A[i],f(i-1)>0
初始状态:f(0)=A[0]
最后求max(f(i)).
int GreatestSumOfSubArray(int a[],int length) { int greatest = 0x80000000; int f = 0; for(int i=0;i<length;i++) { if(f>=0) f+=a[i]; else f = a[i]; if(f>greatest) greatest = f; } return greatest;}
0 0
- 剑指offer:31-连续子数组的最大和
- 剑指offer-31:连续子数组的最大和
- 剑指offer 31 - 连续子数组的最大和
- 剑指Offer-31-连续子数组的最大和
- 剑指offer-31:连续子数组的最大和
- 剑指offer 31 连续子数组的最大和
- [剑指offer]连续子数组最大和
- 剑指offer-最大连续子数组和
- 剑指offer:连续子数组最大和
- 剑指offer---连续子数组最大和
- 【剑指offer】连续子数组最大和
- 剑指Offer之连续子数组的最大和
- 【剑指offer】连续子数组的最大和
- 剑指offer--连续子数组的最大和
- 剑指Offer之 - 连续子数组的最大和
- 剑指offer之连续子数组的最大和
- 《剑指offer》连续子数组的最大和
- 剑指offer:连续子数组的最大和
- PropertyPlaceholderConfigurer获取属性文件指定key的value值
- android编译分析之3—pathmap.mk
- 在项目中使用AngularJS+UI-Grid
- web开发乱码问题
- OracleOraDb11g_home1TNSListener服务启动后停止
- 剑指Offer-31-连续子数组的最大和
- 顺序折线遍历二维数组
- jQuery Mobile 学习四
- 绕过CONFIG_MODVERSIONS
- Axialis IconWorkshop破解版不能用了?看这个替换品
- APK动态加载框架(DL)解析
- shell 里执行sqlldr,not found
- nyoj--218--Dinner(语法)
- JBPM4.4业务流程管理框架详细解读