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

骨干校建设专题网站/seo推广专员

骨干校建设专题网站,seo推广专员,柳州哪里有网站建设,自己做网站要学什么软件【快慢指针法】 考虑:谁设循环,边界是什么,步长是什么,移动条件是什么 :谁走得快谁设循环---->快指针,边界是数组长度(不溢出),步长为1,移动条件以数组[0,…

在这里插入图片描述

在这里插入图片描述
【快慢指针法】
考虑:谁设循环,边界是什么,步长是什么,移动条件是什么
:谁走得快谁设循环---->快指针,边界是数组长度(不溢出),步长为1,移动条件以数组[0,1,2,3,3,0,4,2]为例,当快指针所指向的元素与val不符,那我们期望数组不做改变,指针继续往前走,当快指针所指元素等于val值,则希望当前指针后续的所有元素都往前移动。此时,如果考虑当nums[fast]==val作为条件对数组进行改动的话,比如当fast=2,nums[fast]val2,让low指针指向当前位置,fast不断后移把元素往前搬,这就会退化成双重循环的暴力解法,与我们想要的效果不符,所以需要考虑另一种条件:当快指针所指元素与val不符时,数组做出改变
这样循环会有两种情况出现:
①nums[fast]==val
此时此刻low指针会与fast指针同在,因为没遇到val,low指针不语只是一味地跟随,那么当遇到了val,fast指针需要找到下一个不是val的元素把当前val覆盖掉,也就只需要fast循环,当出现!=val的情况,则会覆盖掉
②nums[fast]!=val
我们希望数组不发生改变,也就是元素不移动,那么可以原地交换,nums[low++]=nums[fast],慢指针仅仅跟随快指针

int removeElement(int* nums, int numsSize, int val) {//快慢指针int low=0;for(int fast=0;fast<numsSize;fast++){if(nums[fast]!=val){nums[low++]=nums[fast];}}return low;
}
http://www.whsansanxincailiao.cn/news/31946610.html

相关文章:

  • 有域名怎么建设网站/it培训课程
  • 网站设计师是什么/产品推广方法
  • 给别人做金融网站 犯法吗/下载百度app最新版并安装
  • 网站建设项目的费用做什么科目/怎么创建网站快捷方式到桌面
  • 中国建工社微课程官网/无锡seo培训
  • 网站开发前端培训/百度竞价关键词价格查询工具
  • 网站建设功能/哪些网站推广不收费
  • 重庆做网站建设哪家好/网络运营策划
  • 商贸公司网站建设方案/管理培训班
  • ssm网站开发源代码/北京aso优化
  • 网站主机域名/乐陵seo外包公司
  • 多图片网站优化/淘宝搜索词排名查询
  • 汽车网站网页设计/网络平台营销
  • 建设银行亚洲官方网站/创建一个网站
  • wordpress app 开发/网站seo工具
  • 定制网站哪家好/长沙专业网站制作
  • 哪些网站做的比较好的/青岛网站建设培训学校
  • 15个国内互动网站设计欣赏/百度seo排名点击器app
  • 广西住房和城乡建设部网站/软文代写是什么
  • 网站建设软著/搜索引擎的工作原理有哪些
  • 番禺网站开发公司/潍坊今日头条新闻
  • 网站建设无广告/seo招聘职责
  • 制作一个门户网站需要多少钱/百度2023免费
  • 怎样网络营销推广/百度移动端优化
  • 美发培训网站/网站设计与制作
  • 传媒公司 网站开发/百度提交网站的入口地址
  • 运动分类的网站设计论文/北京昨天出啥大事了
  • 日照网站建设网站/seo全网营销
  • 卢湾品牌网站建设/seo品牌推广方法
  • 做软件与做网站建设有什么区别/宁波seo网络推广软件系统