博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
求连续子数组的最大和
阅读量:7058 次
发布时间:2019-06-28

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

//*------------------------------------- 解释下: 例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5, 那么最大的子数组为3, 10, -4, 7, 2, 因此输出为该子数组的和18。  所有的东西都在以下俩行, 即: b  :  0  1  -1  3  13   9  16  18  13   sum:  0  1   1  3  13  13  16  18  18    其实算法很简单,当前面的几个数,加起来后,b<0后, 把b重新赋值,置为下一个元素,b=a[i]。 当b>sum,则更新sum=b; 若b
//*-------------------------------------
 
private static int sum(int[] array) {		int sum = 0, max = -(1 << 31);		for (int i = 0; i < array.length; i++) {			sum += array[i];			if (sum > max) {				max = sum;				System.out.print(max + " ");			} else if (sum < 0) {				sum = 0;			}		}		return max;	}
 

  

 

转载于:https://www.cnblogs.com/cugb-2013/p/3631563.html

你可能感兴趣的文章
Cisco 安全技术系列之一:2层***防范技术
查看>>
Hello World
查看>>
鼠标放在控件上显示提示信息
查看>>
open***
查看>>
开启golang之旅
查看>>
Android TableLayout表格布局
查看>>
我的友情链接
查看>>
对于Mysql大量数据查询速度慢的问题
查看>>
tomcat中的server.xml
查看>>
我的友情链接
查看>>
购物车--low版
查看>>
linux
查看>>
PHP中的替换strtr
查看>>
Apache和nginx 301重定向
查看>>
LINQ分页和排序,skip和Take 用法
查看>>
Activiti 查找流程状态(流程下一步)
查看>>
Delphi 密码限3次登录程序(附:源码)
查看>>
Linux中大量TIME_WAIT的解决办法
查看>>
Angular UI Route
查看>>
一个应届毕业生程序员的独白
查看>>