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

产品开发岗位职责seo站长论坛

产品开发岗位职责,seo站长论坛,广州建站招聘,wordpress图片不同分辨率题目解析 移动零 nums [0,1,0,3,12] [1,3,12,0,0]算法原理 数组划分(数组分块) 双指针算法(利用数组下标来充当指针)使用两个指针的作用: cur指针:从左往右扫描数组,就是遍历数组。 dest指针…

题目解析
移动零

nums = [0,1,0,3,12]
[1,3,12,0,0]

算法原理
数组划分(数组分块)

双指针算法(利用数组下标来充当指针)

使用两个指针的作用:

cur指针:从左往右扫描数组,就是遍历数组。
dest指针:已经处理之后的区间内,非零元素的最后一个位置

这两个指针将分隔为三个区间:

第一个:[0,dest]
第二个:[dest+1,cur-1]
第三个:[cur,n-1]

在这里插入图片描述

第一个:[0,dest] 非0元素
第二个:[dest+1,cur-1] 0元素
第三个:[cur,n-1] 未处理元素

在这里插入图片描述


[0,1,0,3,12]

在这里插入图片描述

当你遇到0元素的时候,只需要让cur向后移动一位即可
当你遇到非0元素的时候,需要让dest先去向后移动一位,然后交换dest与cur位置的元素,然后cur继续向后移动一位。

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

当cur遍历到n位置的时候,表示已经完成。

在这里插入图片描述
总结一下:

cur从前往后遍历的过程中,会有两种情况:1.遇到0元素:cur++2.遇到非0元素:swap(dest+1,cur)dest++,cur++

编写代码

class Solution {
public:void moveZeroes(vector<int>& nums) {for(int cur = 0,dest = -1;cur<nums.size();cur++){if(nums[cur]!=0){swap(nums[++dest],nums[cur]);}}}
};
http://www.mmbaike.com/news/42942.html

相关文章:

  • 长沙软件公司排行榜关键词排名优化怎么样
  • 新万网站建设渠道营销推广方案
  • 传奇网游排名南通百度seo代理
  • 网站模板带后台廊坊seo排名收费
  • 什么是网站html静态化seo流量优化
  • 用asp做网站怎么美观seo搜索引擎优化服务
  • 17做网站郑州国际新闻视频
  • 昆明网站建设天锐科技西安疫情最新数据消息中高风险地区
  • 使用asp.net做购物网站深圳网络营销的公司哪家好
  • 淘宝网站可以做seo吗北京网站优化校学费
  • 长宁区网站建设公网络营销的优势
  • 五莲县财源建设网站郑州模板建站代理
  • 新疆电商网站建设公司武汉seo公司哪家专业
  • 政府网站建设维护及内容保障百度推广视频
  • 重庆的网站设计公司价格雅诗兰黛网络营销策划书
  • 怎样做吓人网站网络优化工程师证书
  • wordpress留言插件萧山seo
  • 格尔木市住房和城乡建设局网站百度网盘首页
  • 2022最新英雄合击手游杭州seo推广排名稳定
  • 无锡制作网站价格佛山做网络优化的公司
  • 做网站就上房山华网天下如何免费创建自己的平台
  • 做的很好的淘宝客网站广州seo工资
  • readme.md做网站游戏推广平台代理
  • 简约大气网站模板汕头百度seo公司
  • 用什么做php网站软件培训机构
  • 网站的建设过程网站seo优化服务商
  • 做网站源码要给客户嘛国外网站排行
  • 嘉兴高端网站建设百度 营销推广是做什么的
  • 网站升级页面连接设置怎么写软文
  • 越南做网站服务器企业线上培训平台有哪些