做前端项目怎么进行网站切图,什么是网站分析,如何做自动采集视频网站源码,个人网站做支付接口给你一个整数数组 nums #xff0c;请你找出一个具有最大和的连续子数组#xff08;子数组最少包含一个元素#xff09;#xff0c;返回其最大和。 子数组
是数组中的一个连续部分。 示例 1#xff1a;
输入#xff1a;nums [-2,1,-3,4,-1,2,1,-5,4]
输出#xff1a;…给你一个整数数组 nums 请你找出一个具有最大和的连续子数组子数组最少包含一个元素返回其最大和。 子数组
是数组中的一个连续部分。 示例 1
输入nums [-2,1,-3,4,-1,2,1,-5,4]
输出6
解释连续子数组 [4,-1,2,1] 的和最大为 6 。示例 2
输入nums [1]
输出1示例 3
输入nums [5,4,-1,7,8]
输出23提示
1 nums.length 105-104 nums[i] 104
本题我看大部分题解要么是用的动态规划要么是分治来解决的那我这里就再介绍一个简单的解决方法-----前缀和直接看代码~ int maxSubArray(vectorint nums) {int ansINT_MIN;//存储最后的结果即最大和int min_pre0;//存储当前的最小值int pre_sum0;//存储前缀和for(int x:nums){pre_sumx;ansmax(ans,pre_sum-min_pre);min_premin(min_pre,pre_sum);}return ans;}
是不是比动态规划更容易理解些手动狗头