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

门户网站模块域名备案是什么意思?

门户网站模块,域名备案是什么意思?,网页链接的视频怎么下载,鞍山高新区网站我将通过下面这几个题目,来体现我们的双指针的一个思想。 283. 移动零 - 力扣(LeetCode) 1089. 复写零 - 力扣(LeetCode) 202. 快乐数 - 力扣(LeetCode) 11. 盛最多水的容器 - 力扣&#xf…

 我将通过下面这几个题目,来体现我们的双指针的一个思想。

283. 移动零 - 力扣(LeetCode)

1089. 复写零 - 力扣(LeetCode)

202. 快乐数 - 力扣(LeetCode)

11. 盛最多水的容器 - 力扣(LeetCode)

611. 有效三角形的个数 - 力扣(LeetCode)

LCR 179. 查找总价格为目标值的两个商品 - 力扣(LeetCode)

15. 三数之和 - 力扣(LeetCode)

18. 四数之和 - 力扣(LeetCode)

 前言 

  本文的双指针,有以下几个思想 ,一个是暴力枚举,另一个是用双指针优化暴力枚举,至少降低n的1次方的算法,(n^2 可以降低至n) 另一个是,双指针主要有: 模块类型的双指针(分区域),快慢双指针,从前以及从后遍历覆盖双指针,结合单调性求最佳组合的双指针。(你学完以后再来看这些话或许会蛮有感受的!)

     还有一个很重要的事情跟读者说哦,对于算法我强烈建议你手写思路,可以用伪代码去写,分为3个步骤去写:1. 问题描述(跟着样例去走一遍) 2 . 算法思路(画图) 3.代码实现(伪代码写下来后面你电脑上写会很方便)

283. 移动零 - 力扣(LeetCode)

1.1 题目描述 

   问题的意思很简单,让你不改变数组的大小,对数组原地进行把数组的0元素放到前面去,0元素放到后面去,同时还要保证非0元素之前的顺序。 比如  

 【0,1,0,3,12】----》  【1,3,12,0,0】

  这很形象的一个分块双指针问题。

1.2 算法思路

    我们可以把这个分块画出来然后设计双指针

  分区域 : 【0,des】---》非0区域

                  【des,cur-1】 ---》 0区域

                   cur指向的是待处理的位置   

         移动思路: 对cur遇到的不同情况进行处理,是否加入哪个区域。

1.3 代码设计思路

   des初始化 -1   

  第一个待处理的元素 cur初始化0

    

   然后开始处理吧:当cur遇到0,cur++即可 

  当cur 遇到非0 让des+=1 然后互换swap(【cur】,【des】);

 具体的走动大家手画图哦 这样思路更清晰 

最后是对算法边界情况的处理  cur<size  (不遗漏的把每个元素都处理就行了)

1.4 代码

  void moveZeroes(vector<int>& nums) {int des =-1;int cur = 0;while(cur!=nums.size()){if(nums[cur]==0){cur++;}else{des++;std::swap(nums[cur],nums[des]);cur++;}}}

 二.  1089. 复写零 - 力扣(LeetCode)  

           1089. 复写零 - 力扣(LeetCode)

   2.1 问题描述 

   

    简单来说就是,每个0元素的后面都要复写一个0, 然后其他元素可能会被”赶“出去

   举个栗子:

    【1,0,2,3,0,4,5,0】(8个元素 复写两个0元素就满了)----》【1,0 0,2,3,0,0,4】

2.2 思路设计

     其实这个题目有一个很经典的思路(题目不让你这么写但是你可以这么想哈哈哈)那就是异地双指针。   打个比方:

代码思路我就不写了,我待会下面会直接放这个思路的代码。接下来我们着重说说本地双指针思路是什么样的。

  有一点点小复杂其实哈这个过程你要理清楚的话: (别被上面的简单程度迷惑了不准哈)

   2.2.1首先这里指针建议从前往后覆盖

     初始化 d指向数组的末尾(注意是整个数组的末尾 这样就可以确保了 被踢出去的元素不会在这里面)

      初始化 c指向的是复写0之后数组的末尾元素位置(比如下面这个数组 复写之后 5和0都被t出去了 末尾的元素就是4)

  我们先直接从这个情况来进行吧,至于如何让c和d指针指向的是对应的指定位置,我们待会在设计。 

       现在就很好设计了,当c指向的是非0, swap(【c】,【d】)然后让d--,

    之后在判断以下 c走到头了吗,然后在c++。

    按照上面的思路得到下面了(手画一下呗):  

如果遇到了0,让【d】 = 0 然后在让[++d] =0 .  之后

 在判断一下cur走到头了吗, 然后在c++

到这里复写0的过程你就可以捋清楚了。下面我们来设计然后找到 d和c的位置。

2.2.2 c和d的位置

    这里同样是用了一个双指针的思路:

    

 这样做大部分情况能保证使得d指向的是数组的最末尾,然后c指向的是复写后的最后一个。

但是还有一直情况 会让d指向的是元素末尾的下一个,那就是当元素的最末尾一个元素就是0的时候我们要特殊处理一下。

因为如果按照这个根据我们前面从前往后覆盖的化,不能对越界覆盖对吧,但是如果可以其实这个思路到这也就结束了。  所以还是处理吧 那就是基于现在这种情况手动处理一下。 

    我们自己手动走一遍复写的过程。 【c】是0 我们让 【d】 =0(这里越界就不写嘛)

【--d】 =0 然后在判断c走到头了吗 因为万一就两个元素。。。 然后在让c++;

代码设计思路

    根据上面的思路 先是找到d,c位置 然后进行从后往前复写

强烈建议你先自己根据思路手写完之后,在自己写代码 然后对照我的哈哈哈。

代码

void duplicateZeros(vector<int>& arr) {int des = -1;int cur = 0;do{if (arr[cur] != 0){des++;}else {des+=2;}if(des<arr.size()-1)cur++;} while (des < arr.size()-1);// 边界条件if(des==arr.size()){arr[--des]=0;des--;cur--;}while (cur >= 0){if (arr[cur] != 0){swap(arr[cur], arr[des]);}else {arr[des] = 0;arr[--des] = 0;}cur--;des--;}


文章转载自:

http://TAYzpIpX.hwnqg.cn
http://eI4Kp1Lu.hwnqg.cn
http://dgpycwb8.hwnqg.cn
http://fxdUaoXc.hwnqg.cn
http://uswXReBs.hwnqg.cn
http://dhdSzvFz.hwnqg.cn
http://wNfVKiWB.hwnqg.cn
http://78wYMAq8.hwnqg.cn
http://4jy3aUx5.hwnqg.cn
http://1G01YnQw.hwnqg.cn
http://2HkD7ccn.hwnqg.cn
http://u1MYWAIQ.hwnqg.cn
http://59LAAJYZ.hwnqg.cn
http://prccGIL2.hwnqg.cn
http://QUyeazAl.hwnqg.cn
http://taN3HIwx.hwnqg.cn
http://LGPFqyf0.hwnqg.cn
http://c7LqUIdI.hwnqg.cn
http://do7MWuG5.hwnqg.cn
http://uoObRmuD.hwnqg.cn
http://pA0tEWBr.hwnqg.cn
http://m3WIFvr0.hwnqg.cn
http://V0kHlpsY.hwnqg.cn
http://HbCOB3R4.hwnqg.cn
http://eOlEm2e7.hwnqg.cn
http://vJHwYhfc.hwnqg.cn
http://CKhmMExO.hwnqg.cn
http://9sYnosA6.hwnqg.cn
http://Wng9IW4q.hwnqg.cn
http://7KmIJ8NT.hwnqg.cn
http://www.dtcms.com/wzjs/654814.html

相关文章:

  • wordpress 互动性廊坊视频优化价格
  • 怎么找国外采购商汕头百度关键词优化
  • 付公司网站费用怎么做分录电商网站后台功能
  • 1个云虚拟主机怎么做多个网站深圳工程招标信息网
  • 防城港网站seo电销外包怎么收费
  • 网站制作费用明细建设银行网站密码忘记了咋办
  • 如何建设网站赚钱qq发网站链接怎么做
  • 自己做发卡网站长昆明 五华 网站建设
  • 手工制作小玩具简单又好玩门户网站做seo
  • 网站都需要续费亿网域名
  • 上海建站shwzzz东营网站建设优选案例
  • 浙江做网站公司群晖 wordpress 外网
  • 中文网站的seo怎么做包装设计网站是什么样子的
  • 网站和网络有什么区别08r2 搭建php网站
  • 建立了网站后如何发贴文创产品设计创意
  • 工信部网站备案规定网络策略
  • 建站之星模板制作网站建立安全连接失败
  • 3 阐述网站建设的步骤过程网站免费网站免费优化优化
  • 淘宝做基础销量怎么网站简单描述一下网站制作的流程
  • 支付宝网站怎么设计的百度手机模板网站
  • 网站建设素材模板下载网站怎么做qq登录
  • 重庆企业品牌网站建设wordpress 加子目录
  • 推广产品网站建设哪些网站做电商比较好
  • 给别人做网站用做假酒验证wordpress 编辑自己代码
  • 网站优化 情况中国工厂网
  • 有域名怎么建网站wordpress设置会员下载
  • 吉大建设工程学院官方网站友情链接检测结果
  • 动易学校网站管理系统 漏洞新媒体运营论文
  • 网站还没有做可以备案吧app开发费用标准
  • 网站的备案号在哪北京王府井房价多少钱一平