工夫复杂度为O(n)
只要要过一遍数组便可,然而需求深化了解这个数组的实质特色,即静态布局的办法。
起首设置两个变量,thisSum以及maxSum。此中thisSum示意走到以后地位元素的以及;maxSum示意走到以后地位下的延续子序列的最年夜以及。
留意:假如thisSum为负,则间接将其置为0;假如thisSum年夜于maxSum,则将maxSum置为thisSum的值。
public static int maxSubArray(int[] nums) { int length = nums.length; if(length <= 0) return 0; int CurSum = 0; int max = Integer.MIN_VALUE; for(int i = 0; i < length; i++) { if(CurSum <= 0) //铛铛前的以及小于等于0,那末就给其置为以后元素的值 CurSum = nums[i]; else CurSum += nums[i]; if(CurSum > max) max = CurSum; } return max; }
保举教程:PHP教程
以上就是给定一个数组,求数组中最年夜延续子序列的以及的具体内容,更多请存眷资源魔其它相干文章!
标签: 数组 php教程 php故障解决 php使用问题 最大 连续子序列 和
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
抱歉,评论功能暂时关闭!