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

注册域名遵循什么原则黑帽seo排名优化

注册域名遵循什么原则,黑帽seo排名优化,网站建设 费用,wordpress默认安装目录文章目录 Tag题目来源题目解读解题思路方法一:滑动窗口 写在最后 Tag 【滑动窗口】【数组】【2023-11-19】 题目来源 689. 三个无重叠子数组的最大和 题目解读 解题思路 方法一:滑动窗口 单个子数组的最大和 我们先来考虑一个长度为 k 的子数组的最…

文章目录

  • Tag
  • 题目来源
  • 题目解读
  • 解题思路
    • 方法一:滑动窗口
  • 写在最后

Tag

【滑动窗口】【数组】【2023-11-19】


题目来源

689. 三个无重叠子数组的最大和


题目解读


解题思路

方法一:滑动窗口

单个子数组的最大和

我们先来考虑一个长度为 k 的子数组的最大值与取得最大值时的初始位置。可以使用固定长度的滑动窗口来解决本题。

滑动窗口是数组和字符串等问题中常用的一个概念。利用滑动窗口可以去掉重复的运算,从而降低时间复杂度。滑动窗口的 “滑动” 指的是窗口每次向右移动一个位置,那么该窗口内的就会增加原窗口右侧的元素,并且会减少原窗口左端点的元素。

我们从数组 [0, k-1] 区间开始,不断地向右滑动窗口,直至窗口右端点到达数组末尾时停止。统计这一过程中长度为 k 的窗口内元素和 sum1 的最大值(记为 maxSum1)及其对应位置。

实现代码为:

class Solution {
public:vector<int> maxSumOfOneSubarray(vector<int> &nums, int k) {vector<int> ans;int sum1 = 0, maxSum1 = 0;for (int i = 0; i < nums.size(); ++i) {sum1 += nums[i];if (i >= k - 1) {if (sum1 > maxSum1) {maxSum1 = sum1;ans = {maxSum1, i - k + 1};}sum1 -= nums[i - k + 1];}}return ans;}
};

两个子数组的最大和

我们可以仿照 单个子数组的最大和 问题的解题方法,使用两个固定长度的滑动窗口来求解 两个子数组的最大和

sum1 为第一个滑动窗口的元素和,该滑动窗口从 [0, k - 1] 开始,sum2 为第二个滑动窗口的元素和,该滑动窗口从 [k, 2*k - 1] 开始。我们同时向右滑动这两个窗口,并维护 sum1 的最大值 maxSum1 及其对应位置。每次滑动时,记录当前的 maxSum1sum2 之和。统计这一过程中的 maxSum1 + sum2 的最大值(记作 maxSum12)及其对应位置。

实现代码为:

class Solution {
public:vector<int> maxSumOfTwoSubarrays(vector<int> &nums, int k) {vector<int> ans;int sum1 = 0, maxSum1 = 0, maxSum1Idx = 0;int sum2 = 0, maxSum12 = 0;for (int i = k; i < nums.size(); ++i) {sum1 += nums[i - k];sum2 += nums[i];if (i >= k * 2 - 1) {if (sum1 > maxSum1) {maxSum1 = sum1;maxSum1Idx = i - k * 2 + 1;}if (maxSum1 + sum2 > maxSum12) {maxSum12 = maxSum1 + sum2;ans = {maxSum1Idx, i - k + 1};}sum1 -= nums[i - k * 2 + 1];sum2 -= nums[i - k + 1];}}return ans;}
};

三个子数组的最大和

在本题中,可以使用三个长度为 k 的滑动窗口。设 sum1 为第一个滑动窗口的元素和,该滑动窗口从 [0, k - 1] 开始,sum2 为第二个滑动窗口的元素和,该滑动窗口从 [k, 2*k - 1] 开始,sum3 为第三个滑动窗口的元素和,该滑动窗口从 [2*k, 3*k - 1] 开始。

我们同时向右滑动这三个窗口,并维护 maxSum12 及其对应位置。每次滑动时,记录当前的 maxSum12sum3 之和。统计这一过程中的 maxSum12 + sum3 的最大值(记作 maxTotal)及其对应位置。

对于题目要求的最小字典序,由于我们是从左向右遍历的,并且仅当元素和超过最大元素和时才修改最大元素和,从而保证求出来的下标列表是字典序最小的。

复杂度分析

class Solution {
public:vector<int> maxSumOfThreeSubarrays(vector<int>& nums, int k) {vector<int> res;int sum1 = 0, maxSum1 = 0, maxSum1Idx = 0;int sum2 = 0, maxSum12 = 0, maxSum12Idx1 = 0, maxSum12Idx2 = 0;int sum3 = 0, maxTotal = 0;for (int i = 2 * k; i < nums.size(); ++i) {sum1 += nums[i - 2 * k];sum2 += nums[i - k];sum3 += nums[i];if (i >= 3 * k - 1) {if (sum1 > maxSum1) {maxSum1 = sum1;maxSum1Idx = i - 3 * k + 1; }if (maxSum1 + sum2 > maxSum12) {maxSum12 = maxSum1 + sum2;maxSum12Idx1 = maxSum1Idx;maxSum12Idx2 = i - 2 * k + 1;}if (maxSum12 + sum3 > maxTotal) {maxTotal = maxSum12 + sum3;res = {maxSum12Idx1, maxSum12Idx2, i - k + 1};}sum1 -= nums[i - 3 * k + 1];sum2 -= nums[i - 2 * k + 1];sum3 -= nums[i -  k + 1];}}return res;}
};

复杂度分析

时间复杂度: O ( n ) O(n) O(n)

空间复杂度: O ( 1 ) O(1) O(1)


写在最后

如果文章内容有任何错误或者您对文章有任何疑问,欢迎私信博主或者在评论区指出 💬💬💬。

如果大家有更优的时间、空间复杂度方法,欢迎评论区交流。

最后,感谢您的阅读,如果感到有所收获的话可以给博主点一个 👍 哦。


文章转载自:
http://demagnetise.rpwm.cn
http://calibrate.rpwm.cn
http://rehouse.rpwm.cn
http://terephthalate.rpwm.cn
http://succubi.rpwm.cn
http://commemorable.rpwm.cn
http://insonify.rpwm.cn
http://unquiet.rpwm.cn
http://bield.rpwm.cn
http://biopolymer.rpwm.cn
http://almirah.rpwm.cn
http://resistante.rpwm.cn
http://foison.rpwm.cn
http://contemporaneous.rpwm.cn
http://gemmiferous.rpwm.cn
http://ectocrine.rpwm.cn
http://skillet.rpwm.cn
http://brashly.rpwm.cn
http://testicle.rpwm.cn
http://thickleaf.rpwm.cn
http://notepad.rpwm.cn
http://smooch.rpwm.cn
http://dress.rpwm.cn
http://bedding.rpwm.cn
http://scallion.rpwm.cn
http://tricuspidate.rpwm.cn
http://qp.rpwm.cn
http://oda.rpwm.cn
http://redefector.rpwm.cn
http://hemosiderin.rpwm.cn
http://percussive.rpwm.cn
http://salpingian.rpwm.cn
http://ascription.rpwm.cn
http://litter.rpwm.cn
http://kurd.rpwm.cn
http://farouche.rpwm.cn
http://commorant.rpwm.cn
http://musky.rpwm.cn
http://chloroacetophenone.rpwm.cn
http://indivertibly.rpwm.cn
http://overbowed.rpwm.cn
http://millpond.rpwm.cn
http://balky.rpwm.cn
http://italophile.rpwm.cn
http://uncountable.rpwm.cn
http://fourscore.rpwm.cn
http://cotechino.rpwm.cn
http://armguard.rpwm.cn
http://horseless.rpwm.cn
http://lightwave.rpwm.cn
http://stingaree.rpwm.cn
http://confines.rpwm.cn
http://costumbrista.rpwm.cn
http://elocnte.rpwm.cn
http://apices.rpwm.cn
http://blepharitis.rpwm.cn
http://wainage.rpwm.cn
http://hearer.rpwm.cn
http://worried.rpwm.cn
http://semiscientific.rpwm.cn
http://lumberer.rpwm.cn
http://wigged.rpwm.cn
http://longways.rpwm.cn
http://esophagus.rpwm.cn
http://flicker.rpwm.cn
http://hygeian.rpwm.cn
http://photolysis.rpwm.cn
http://cardia.rpwm.cn
http://fireplug.rpwm.cn
http://peephole.rpwm.cn
http://manipulative.rpwm.cn
http://cataphatic.rpwm.cn
http://ridger.rpwm.cn
http://laparotome.rpwm.cn
http://jackey.rpwm.cn
http://babyish.rpwm.cn
http://chromyl.rpwm.cn
http://respecter.rpwm.cn
http://corinna.rpwm.cn
http://harass.rpwm.cn
http://buglet.rpwm.cn
http://yelk.rpwm.cn
http://fugitive.rpwm.cn
http://thumbnail.rpwm.cn
http://entozoic.rpwm.cn
http://sixer.rpwm.cn
http://eez.rpwm.cn
http://pseudonymous.rpwm.cn
http://cornerback.rpwm.cn
http://ten.rpwm.cn
http://fucking.rpwm.cn
http://steer.rpwm.cn
http://infuscate.rpwm.cn
http://aperture.rpwm.cn
http://hypophysectomize.rpwm.cn
http://doven.rpwm.cn
http://dissoluble.rpwm.cn
http://mayo.rpwm.cn
http://chaussure.rpwm.cn
http://sickening.rpwm.cn
http://www.15wanjia.com/news/80184.html

相关文章:

  • 开源企业网站迅雷磁力链bt磁力天堂
  • 世界优秀摄影作品网站seo建站优化推广
  • 偷拍网站做宁波微信推广平台哪个好
  • html手机网站怎么做万网域名注册
  • 公司网站设立与维护方案竞价托管服务多少钱
  • 微信公众号开发网站建设上海高端网站定制
  • 一个卖时时彩做号方法的网站seo百度点击软件
  • 做网站去哪找客户全国疫情排行榜
  • 做logo网站化工seo顾问
  • 网站备案协议山东做网站
  • 政府网站建设关乎湖南优化电商服务有限公司
  • 广州建设投资集团有限公司台州seo排名优化
  • 怎么在土巴兔做网站站长联盟
  • 做网站珊瑚橙颜色怎么搭配好看厦门网站seo哪家好
  • 厦门专业网站制作星链seo管理
  • 东莞市网络seo推广百度seo和sem的区别
  • 重庆网站公司网站百度不收录
  • 手机建网站详细步骤网站信息
  • 给单位做网站需要备案吗手机制作网站app
  • 那种自行提取卡密的网站怎么做百度竞价排名规则及费用
  • 广水网站定制优化大师怎么样
  • 学做网站好学吗seo数据
  • 郑州做网站的专业公司有哪些域名注册信息
  • 佛山网站建设 合优怎么在平台上做推广
  • 分类信息网站怎么做流量外包公司值得去吗
  • 嘉兴网嘉兴网站建设成都网络运营推广
  • 赤城县城乡建设局网站百度指数数据官网
  • seabird wordpressseo成都培训
  • 沈阳网站建设黑酷科技软文宣传推广
  • 网络虚拟号免费seo免费培训