152.乘积最大子数组
思路:
更新包含当前值的最大值和最小值
可以是根据前面的算出来,也可以是我自身
前面的说明是包含上一个元素的序列,自身说明我新开一个头,选前面还没有我自己好,我选什么啊
classSolution{publicintmaxProduct(int[]nums){intmax=nums[0],min=nums[0],result=nums[0];for(inti=1;i<nums.length;i++){inttemp=Math.max(Math.max(nums[i]*max,nums[i]*min),nums[i]);min=Math.min(Math.min(nums[i]*max,nums[i]*min),nums[i]);max=temp;result=Math.max(result,max);}returnresult;}}