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

怎样做网站测评网站站外推广的内外链接怎么做

怎样做网站测评,网站站外推广的内外链接怎么做,手机建站程序,百度站长工具有哪些目录 0.滑动窗口原理讲解1.长度最小的子数组1.题目链接2.算法原理讲解3.代码实现 0.滑动窗口原理讲解 滑动窗口:“同向双指针”滑动窗口可处理「⼀段连续的区间」问题如何使用? left 0, right 0进窗口判断 是否出窗口 更新结果 -> 视情况而定 可能…

目录

  • 0.滑动窗口原理讲解
  • 1.长度最小的子数组
    • 1.题目链接
    • 2.算法原理讲解
    • 3.代码实现


0.滑动窗口原理讲解

  • 滑动窗口:“同向双指针”
  • 滑动窗口可处理「⼀段连续的区间」问题
  • 如何使用?
    1. left = 0, right = 0
    2. 进窗口
    3. 判断
      • 是否出窗口
    4. 更新结果 -> 视情况而定
      • 可能在出窗口前
      • 可能在进窗口之后
  • 具体原理解析将结合**「长度最小的子数组」**来说明

1.长度最小的子数组

1.题目链接

  • 长度最小的子数组

2.算法原理讲解

  • 此问题分析的对象是**「⼀段连续的区间」,因此可以考虑「滑动窗⼝」**的思想来解决

  • 让滑动窗⼝满⾜

    • i位置开始,窗⼝内所有元素的和⼩于target
    • 当窗⼝内元素之和第⼀次⼤于等于⽬标值的时候,就是i位置开始满⾜条件的最⼩⻓度
  • 做法:

    • 如果窗⼝sum >= target
      • 更新结果,并且将左端元素划出去的同时继续判断是否满⾜条件并更新结果
        • 因为左端元素可能很⼩,划出去之后依旧满⾜条件
    • 如果窗⼝sum不满⾜条件:
      • right++,让下⼀个元素进⼊窗⼝
        请添加图片描述
  • 为何滑动窗⼝可以解决问题,并且时间复杂度更低?

    • 这个窗⼝寻找的是:以当前窗⼝最左侧元素(记为left1)为基准,符合条件的情况
      • 即:从left1开始,满⾜sum >= target时的最右侧(记为right1)能到哪⾥
    • 既然已经找到从left1开始的最优的区间,那么就可以⼤胆舍去left1
      • 但是如果继续像暴力求解⽅法⼀样,重新开始统计第⼆个元素(left2)往后的和,势必会有⼤量重复的计算
        • 因为在求第⼀段区间的时候,已经算出很多元素的和了,这些和是可以在计算下次区间和的时候⽤上的
    • 此时,rigth1的作⽤就体现出来了,只需将left1这个值从sum中剔除
      • right1这个元素开始,往后找满⾜left2元素的区间
        • 此时right1也有可能是满⾜的,因为left1可能很⼩,sum剔除掉left1之后,依旧满⾜⼤于等于 target
    • 这样就能省掉⼤量重复的计算
    • 总结:利用单调性,规避了很多没有必要的枚举行为
      • 此处的单调指滑动窗口内sum的单调性,而不是数组原始数据的单调性
  • 时间复杂度 O ( N ) O(N) O(N)

    • 虽然代码是两层循环,但是left指针和right指针都是不回退的,两者最多都往后移动n

3.代码实现

int MinSubArrayLen(int target, vector<int>& nums) 
{int sum = 0, len = INT_MAX;for(int left = 0, right = 0; right < nums.size(); right++){sum += nums[right]; // 进窗口while(sum >= target) // 判断{len = min(len, right - left + 1); // 更新结果sum -= nums[left++]; // 出窗口}}return len == INT_MAX ? 0 : len;
}
http://www.yayakq.cn/news/388101/

相关文章:

  • 如何做音乐网站wordpress 响应式菜单
  • 龙岗网络营销网站制作哪里好网站开发毕业设计参考文献
  • 2019河北省建设厅检测员报名网站建个大型网站需
  • 常熟网站制作找哪家好房产信息网的官网
  • 山东跨境电商建站公司做网站最小的字体是多少
  • ps做图 游戏下载网站济南 网站建设
  • 小网站备案西安 网站建设
  • 用凡科做的网站怎么下载万网icp网站备案专题
  • 东莞网站优化推广seo是什么意思广东话
  • 佛山市南海区水利投资建设有限公司网站更新网站怎么弄
  • 北京海淀区工商局网站网页设计与网站建设完全学习手册pdf
  • 网站建设公司不给ftp兴宁市网站建设
  • 网站后门清除中国设计联盟网服务内容
  • 网站建设中技术程序做美工需要知道的设计网站
  • 电商网站开发教学视频网站建设管理员角色设置
  • 网站维护的页面厦门seo专业培训学校
  • 怎样看一个网站的浏览量宁波企业网站搭建图片
  • 绿园区住房和城乡建设局网站旧房装修 翻新的公司
  • wordpress网站域名解析制作单页网站
  • 深圳网站制作的公司有哪些dedecms 网站名称标签
  • 网站建设报价书自己在家开网店怎么开
  • 企业建站公司平台网站开发维护的好处
  • 织梦网站需要付费吗微信二维码网站制作
  • html5网站开发工具二手车网站模版售价
  • 武进网站建设多少钱网站制作多少钱
  • 网站开发用哪个软件网站域名怎么做变更
  • 哪个网站专做滨水景观平凉市城乡建设局网站
  • 公司网站的主页优化wordpress无法安装插件
  • 医院网站建设合同范本做映射后 内网无法通过域名访问网站
  • 淘宝客论坛响应式php网站下载贵阳网站建设推广