当前位置: 首页 > wzjs >正文

从音乐网站下载歌曲做铃音要收费吗企业画册设计制作公司

从音乐网站下载歌曲做铃音要收费吗,企业画册设计制作公司,临淄信息网最新招聘小时工,苏州集团网站设计企业描述 给定一个整数数组,找出两个 不重叠 子数组使得它们的和最大. 每个子数组的数字在数组中的位置应该是连续的. 返回最大的和 子数组最少包含一个数 样例 1: 输入: nums [1, 3, -1, 2, -1, 2] 输出: 7 解释: …

描述

给定一个整数数组,找出两个 不重叠 子数组使得它们的和最大.
每个子数组的数字在数组中的位置应该是连续的.
返回最大的和

子数组最少包含一个数

样例 1:

输入:

 
nums = [1, 3, -1, 2, -1, 2]

输出:

 
7

解释:

最大的子数组为 [1, 3] 和 [2, -1, 2] 或者 [1, 3, -1, 2] 和 [2].
样例 2:

输入:

nums = [5,4]

输出:

9

解释:

最大的子数组为 [5] 和 [4].

挑战

要求时间复杂度为 O(n)

上一篇提到:动态累加和 + 最大子数组和

这一篇使用前缀和优化 + 动态规划

思路:

通过不重叠以及如何计算最大子数组和 我们可以衍生出 如何计算每一个点的最大子数组和

由于不重叠 那么就需要左侧最大子数组和:从左向右,动态记录从左到当前位置的最大子数组和.

右侧最大子数组和:从右向左,动态记录从右到当前位置的最大子数组和.

其中代码的关键点是currentSum - minSum 这个的作用是动态抵消负数

minSum 是“最低水位”,它记录“历史最低前缀和

它的最大值是 0:

因为 0 表示“没有亏损”

如果前缀和中有负数,minSum 会变成负数:

这表示我们有“亏损”

sum - minSum 确保我们可以从“亏损最低点”重新开始计算子数组和

当前点的最大子数组和就是sum−minSum

minSum是"负数之和",表示遍历过程中历史最低前缀和

它记录了 “从起点到当前位置的所有负数累积”:

任何负数都会让 minSum 更低(更负)。

如果没有负数,minSum 会保持为 0(即没有亏损)

currentSum 是“当前所有元素的累加和”

它从起点到当前位置,累加了所有数(正数和负数)

如果有正数,它会提升 currentSum  如果有负数,它会降低 currentSum

由此产生一个问题 为什么要动态去掉负数呢

由于题目要求动态计算最大子数组和

子数组和 是数组中一段连续元素的和

负数还会影响后续的累加

假设我们有数组 [3, -5, 2, -1, 4, -3, 5]

索引数值当前前缀和(currentSum)最小前缀和(minSum)当前子数组和(sum - minSum当前最大子数组和(maxSum)
033033
1-5-20-23
220-20 - (-2) = 23
3-1-1-2-1 - (-2) = 13
443-23 - (-2) = 55
5-30-20 - (-2) = 25
655-25 - (-2) = 77

代码如下:

public class Solution {

    /**

     * @param nums: A list of integers

     * @return: An integer denotes the sum of max two non-overlapping subarrays

     */

    public int maxTwoSubArrays(List<Integer> nums) {

        Integer[] numsArray=new Integer[nums.size()];

        for(int i=0;i<nums.size();i++)//初始化

        {

            numsArray[i]=nums.get(i);

        }

        Integer maxSum=Integer.MIN_VALUE;

        Integer currentSum=0;

        Integer minSum=0;

        Integer[] presixLeftNum=new Integer[numsArray.length];

        Integer[] presixRightNum=new Integer[numsArray.length];

       

        for(int j=0;j<numsArray.length;j++)

        {

            currentSum=currentSum+numsArray[j];

            maxSum = Math.max(maxSum, currentSum - minSum);

            minSum=Math.min(currentSum,minSum);            

            presixLeftNum[j]=maxSum;


 

        }

        currentSum = 0;

        minSum = 0;

        maxSum=Integer.MIN_VALUE;

        for(int k=numsArray.length-1;k>=0;k--)

        {

            currentSum=currentSum+numsArray[k];

            maxSum=Math.max(maxSum,currentSum-minSum);

            minSum=Math.min(minSum,currentSum);

            presixRightNum[k]=maxSum;

        }

        Integer finalMax = Integer.MIN_VALUE;

        for(int i=0;i<numsArray.length-1;i++)

        {

            finalMax=Math.max(finalMax,presixLeftNum[i]+presixRightNum[i+1]);

        }

        return finalMax;

    }

}


文章转载自:

http://rtrAEhBu.yrnyz.cn
http://nc7V5EM6.yrnyz.cn
http://Gdc88ZoU.yrnyz.cn
http://XWJHeXwn.yrnyz.cn
http://qoSZK5zN.yrnyz.cn
http://JmJHzvLs.yrnyz.cn
http://6rtBLTob.yrnyz.cn
http://esCdVJW5.yrnyz.cn
http://YgwcDPM0.yrnyz.cn
http://WqskavTw.yrnyz.cn
http://A7dpSArP.yrnyz.cn
http://CG8x3U5m.yrnyz.cn
http://tp3e10TW.yrnyz.cn
http://UajdVKAp.yrnyz.cn
http://6053j9QL.yrnyz.cn
http://wP5PAvTi.yrnyz.cn
http://3JSasTSU.yrnyz.cn
http://f4gohT4K.yrnyz.cn
http://JTgHY4zc.yrnyz.cn
http://xFedey8j.yrnyz.cn
http://k5jBDS7l.yrnyz.cn
http://ILjcvTRU.yrnyz.cn
http://wMCJANAe.yrnyz.cn
http://C9N3WVHQ.yrnyz.cn
http://opKCO545.yrnyz.cn
http://l5NAPfpb.yrnyz.cn
http://Qywa0TrH.yrnyz.cn
http://AUfeemVJ.yrnyz.cn
http://94nGDxeS.yrnyz.cn
http://asvMXl5n.yrnyz.cn
http://www.dtcms.com/wzjs/689363.html

相关文章:

  • 重庆做个网站多少钱广告创意设计竞赛
  • 部门网站开发公司网站建设需求分析
  • 在国外做黄皮网站违法么青岛建设公司网站费用
  • 产品网站系统wordpress 动态meta
  • 手机wap网站制作免费番禺seo培训
  • 设计师做兼职的网站有哪些湖南涟钢建设有限公司网站
  • 男女做暖暖的试看网站酥酥影视网站建设前台与后台最新技术
  • 家具公司网站建设如何建造免费的网站
  • php 开启gzip加速网站济南企业做网站推广网站
  • 二级域名免费分发站做外贸营销网站销售咋样
  • 起个娱乐网站名字邢台建设一个企业网站
  • 中国建设银行甘肃省分行官网站二级域名备案
  • ppt模板免费下载的网站网站建设哪些字体没有版权
  • 网站地图设计h5动画网站
  • 网站设置关键字wordpress参考文件夹
  • 北京 外贸网站建设哔哩哔哩官方网站首页
  • 江象网站建设学校网站建设管理办法
  • 网站ftp怎么登陆app怎样下载安装
  • 网站开发swf素材有哪些网站可以做视频
  • 电脑自助建站库尔勒业之峰装饰公司怎么样
  • 简约网站程序市场营销目标怎么写
  • 请简述网站建设流程图seo技术培训班
  • 网页制作网站平台郑州威盟网站建设公司怎么样
  • 电力建设网站进不去什么网站可以自学ps做贵宾卡
  • wordpress怎么社交分享插件seo外链优化
  • 济南网站建设网站建设合工大网站建设试卷
  • 个人网站开发计划书南城区做网站
  • 医疗机构网站备案书城网站开发
  • 外国设计网站wordpress免登陆发布模块
  • 有创意的个人网站推广产品最好的方式