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.

解题思路:

本题目是《算法导论》 4.1 节 最大子数组的原题,书本上给出的是分治的做法,练习4.1-5给出了线性时间的算法,大致归结如下:一次遍历肯定能搞定问题,只需使用一个sum计算遍历下来可能的最大的和,一个maxSum记录数目的最大值,maxSum即为所求,JAVA实现如下:

static public int maxSubArray(int[] nums) {
int sum=nums[0],maxSum=sum;
for(int i=1;i<nums.length;i++){
if(sum<=0)
sum=nums[i];
else
sum+=nums[i];
maxSum=Math.max(maxSum, sum);
}
return maxSum;
}

最新文章

  1. Atitit python3.0 3.3 3.5 3.6 新特性&#160;Python2.7新特性1Python 3_x 新特性1python3.4新特性1python3.5新特性1值得关注的新特性1Pyth
  2. Js变量定义——fn里 var与不var的区别
  3. sklearn Model-selection + Pipeline
  4. linux删除某个php程序进程的组合命令
  5. python学习笔记4(对象/引用;多范式; 上下文管理器)
  6. ubuntu 软件安装的几种方法
  7. CodeForce---Educational Codeforces Round 3 D. Gadgets for dollars and pounds 正题
  8. PL/SQL语句块提高1+case语句
  9. Slack 开源替代品 Rocket.Chat(聊天,文件上传等等)
  10. 猜年龄---while循环
  11. 密码疑云 (3)——详解RSA的加密与解密
  12. vb中的除法
  13. python 数字
  14. numpy中数据合并,stack ,concentrate,vstack,hstack
  15. Dubbo/jupiterSPI 扩展引用
  16. LruCache源码分析
  17. Entity Framework管理实体关系(一):管理一对一关系
  18. 面向移动端的轻量级神经网络模型mobilenet、ShuffleNet
  19. 002-spring cache 基于声明式注解的缓存-02-CachePut、CacheEvict、Caching、CacheConfig、EnableCaching、自定义
  20. Loj 2534 异或序列

热门文章

  1. js获取select改变事件
  2. 【UVALive 3905】BUPT 2015 newbie practice #2 div2-D-3905 - Meteor
  3. USACO 3.2 ratios 高斯消元
  4. ECSHOP手机号码或邮箱用户名都可以登录方法
  5. spring bean实例化方式
  6. Servlet之Filter详细讲解
  7. apt-get常用命令
  8. SQLServer 数据导入导出 SSIS 包 位置
  9. 如果jsp提交到action为空指针的话
  10. C语言strchr()函数:查找某字符在字符串中首次出现的位置