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

移动端模板 wordpress什么是网站seo

移动端模板 wordpress,什么是网站seo,山东做网站靠谱的公司,在pc端网站基础上做移动端题目 链接:leetcode链接 思路分析&#xff08;前缀和&#xff09; 注意&#xff1a;我们前面讲过滑动窗口可以处理子数组、子串等问题&#xff0c; 但是在这道题目里面注意数据范围 -1000 < nums[i] < 1000 nums[i]可正可负&#xff0c;区间的和没有单调性&#xff0c;使…

题目

链接:leetcode链接

在这里插入图片描述
在这里插入图片描述

思路分析(前缀和)

注意:我们前面讲过滑动窗口可以处理子数组、子串等问题,
但是在这道题目里面注意数据范围 -1000 <= nums[i] <= 1000
nums[i]可正可负,区间的和没有单调性,使用不了滑动窗口

这里带来新的解决方法
这道题目也是要求我们求一段连续区间的和,我们的前缀和算法也能帮助我们做到 [l , r] = dp[r] - dp[l - 1]

所以,我们求区间和为k,也就是,k = sum[r] - sum[l - 1]

抽象来看,存在一个区间的和为k,那么在==[0 , i - 1]==就存在一个前缀和为sum - k
我们只需要去寻找这个sum - k的前缀和即可。

在这里插入图片描述

思考一下,我们真的需要另外去开一个前缀和数组吗?
如果开前缀和数组的话,那也是需要遍历前缀和数组,以每一个下标为终点当sum去找sum - k,时间复杂度依旧是O(N2),这和暴力有啥区别呢?

所以是不需要开前缀和数组的,
我们只需要sum - k的个数,为什么不使用hash表呢?
我们每次算到一个新的前缀和,去hash表中查找sum - k的个数,不就可以解决了嘛

此时的sum前缀和,采用滚动数组的方式,利用一个变量就可以统计所有的前缀和了(这里后续不会使用,所以前缀和并不用存起来,所以并不需要实质地开一个数组)

细节:
(1)我们什么时候把前缀和插入hash表
我们要在[0 , i - 1]中查找hash表,也就是要先查找,再插入,
否则就是在[0,i]中查找
在[0,i]中查找的话,如果k是0的话,就会出现bug,
比如只有一个元素1,插入hash表后
sum - k还是等于1,但是我们要找的是和为0,
在hash里面找到了1,就返回1,但是实际上是没有符合要求的子数组

(2)如果[0,i]的前缀和恰好等于k怎么办呢?
此时我们需要特殊处理,
这种情况下,sum - k等于0,此时的对应的sum - k区间不存在,这种情况要特殊处理一下,
在创建hash表的时候,额外把hash[0] = 1,来提前应对这种情况

代码

int subarraySum(vector<int>& nums, int k) {int sum = 0;int ret = 0;unordered_map<int,int> hash;hash[0]++;for(auto & e:nums){sum += e;int check = sum - k;if(hash.count(check)) ret += hash[check];hash[sum]++;}return ret;}
http://www.hengruixuexiao.com/news/52522.html

相关文章:

  • 网站开发工程师是做什么的引流推广犯法吗
  • 怎样做网站的反链站长工具在线免费
  • 网站开发使用api对seo郑州网站seo优化
  • 公司建网站的步骤网络推广服务商
  • 网站维护有多长时间谷歌google下载
  • 做网络推广网站有哪些上海公布最新情况
  • 建平台跟建网站热搜榜百度
  • 架设网站费用整合营销推广
  • node.js可以做网站么竞价推广托管公司价格
  • 建设集团有限公司网站百度推广客服电话人工服务
  • 51的网站是啥全网营销推广公司
  • 欧米茄手表官方网南京企业网站排名优化
  • 做桂林网站的图片大全网站建设推广公司
  • 南通网站排名外包站长之家域名查询排行
  • 网站用户引导长沙大型网站建设公司
  • 汕头网站快速排名优化制作免费个人网站
  • 做阿里巴巴小企业网站今日热点新闻事件摘抄2022
  • 做网站有自己的服务器吗百度搜索引擎工作原理
  • 网站制作代理今日热点新闻视频
  • 略阳县有关作风建设的网站武汉网站seo服务
  • 六安网站软件建设谷歌浏览器下载app
  • 登录网站软件怎么做app拉新推广代理
  • sf网站建设搜索引擎优化自然排名的优点
  • 做独立电商网站今日关注
  • 建立一个购物网站必应搜索引擎网站
  • 网页链接提取工具厦门谷歌seo公司
  • csdn网站上海短视频培训机构
  • 私人为别人做网站违法问题在线crm网站建站
  • 做教育招生网站郑州百度seo
  • 朋友说是做彩票网站运营维护新东方烹饪学校学费一年多少钱