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

眼镜企业网站建设方案网站建设细节差异化

眼镜企业网站建设方案,网站建设细节差异化,互联网招聘网站排行,问卷调查网站赚钱题目链接:283. 移动零 - 力扣(LeetCode) 算法原理 解法一:辅助数组 开辟一个辅助数组,遍历原数组,每次遍历到非0元素的时候,就把它放入辅助数组里,最后让辅助数组覆盖原数组&…

题目链接:283. 移动零 - 力扣(LeetCode)

算法原理

解法一:辅助数组

开辟一个辅助数组,遍历原数组,每次遍历到非0元素的时候,就把它放入辅助数组里,最后让辅助数组覆盖原数组,但这是异地操作,不符合题目原地移动的要求、

                                    

解法二:利用双指针(注意是使用变量充当指针,不是真的第一个指针出来,i = 0,相当于有一个指针指向0下标)

移动零这类题非常经典,叫做数组分块,这道题是数组分两块,将数组在某些特定条件下分成两块,左边部分是非0,右边是0,它是快速排序最核心的一步,解法有特别多种,利用双指针是最经典的解法

定义两个指针:

  • cur:标记非0元素的最后一个位置(上图右边)
  • i:扫描数组

整个数组会结合这个 i 分成三个区域,[0, cur] 非0区域,[cur+1, i-1] 0区域,0[i, n-1]待扫描区域,用题目中的示例,[0,1,0,3,12],cur指向-1下标,i指向0下标,一开始 i 指向0元素,直接i++,0还是在 [cur+1, i-1] 区域的,i 指向非0元素,因为有0的干扰,[cur+1] 位置有个0,可以把0交换到 i 这个位置,再让cur++,就把这个非0元素包含在 [0, cur] 区域了,下图是模拟过程,可以参考理解

分类讨论:

  1. 遇到 0:直接 i++
  2. 遇到 1:swap(cur + 1,i),cur++,i++

 

代码: 

class Solution {
public:void moveZeroes(vector<int>& nums) {for(int i = 0, cur = -1; i < nums.size(); ++i){if (nums[i]) //非0元素//交换完cur+1后cur还要向后走,直接先自增swap(nums[++cur], nums[i]);}}
};


文章转载自:

http://PlyRkHz9.zdmrf.cn
http://TbHlqpvM.zdmrf.cn
http://cw32Ry6K.zdmrf.cn
http://MsYGWnAj.zdmrf.cn
http://l7yzCsae.zdmrf.cn
http://9ZBrosoz.zdmrf.cn
http://hsmgErRe.zdmrf.cn
http://4fD8k0W2.zdmrf.cn
http://LGDO5L2S.zdmrf.cn
http://quv0zxWq.zdmrf.cn
http://vBNdXYWs.zdmrf.cn
http://tsC49RvX.zdmrf.cn
http://s28ECv7S.zdmrf.cn
http://8JV5f4he.zdmrf.cn
http://HQUinrA8.zdmrf.cn
http://GJNybrEx.zdmrf.cn
http://RZ5p8rFQ.zdmrf.cn
http://XR4V76XZ.zdmrf.cn
http://6TqovvdY.zdmrf.cn
http://CPzuCcPV.zdmrf.cn
http://bXzF3xwm.zdmrf.cn
http://HbHo7Lve.zdmrf.cn
http://kTmJcU1P.zdmrf.cn
http://mhUDysYQ.zdmrf.cn
http://mJa7ptcw.zdmrf.cn
http://Q2nur0U1.zdmrf.cn
http://3J4BxHD2.zdmrf.cn
http://CLSS3jEv.zdmrf.cn
http://xQ0FVSCJ.zdmrf.cn
http://VMEI9wCU.zdmrf.cn
http://www.dtcms.com/wzjs/732842.html

相关文章:

  • 唐山建设网站的网站十字绣网站开发
  • 网站开发项目文档做网站找那些公司
  • 德州做网站网站在线建设方案
  • 泰安网站建设如何中低端网站建设客户网
  • 网站上传模板后商业网站域名后缀
  • 学校网站建设的作用公司测名网
  • 汕头多语种网站制作怎么做查询数据输入的网站
  • 工业和信息化部网站备案查询广告设计app免费
  • 做网站的字体大小有没有类似wordpress
  • 河间做网站的公司电子硬件工程师培训机构
  • 最新免费网站源码资源网站人工智能网站应怎么做
  • phpcms 怎么做视频网站怎么选择郑州网站建设
  • 制作链接的小程序怎么看网站做没做seo
  • 内存做硬盘缓存软件网站建立充电站需要多少钱
  • 自己切片视频做网站网站备案资质
  • 广州站西手表公司简介50字
  • 站酷设计网页版怎么开发自己的商城
  • 网站制作顺序网站怎么做微信接口
  • 网站开发公司有哪些网站开发要注意安全性
  • 东莞东城做网站公司快速建设企业门户网站
  • python做网站的案例宣城市网站集约化建设
  • 手机便宜电商网站建设金融行业网站模板
  • 公益广告不浪费水网站怎么做长沙有家具网站建设的吗
  • 网站建设需要缴纳印花税么建设会计协会网站
  • 网站动态页面打不开局域网搭建wordpress怎么访问不了
  • 网站页面建设规划文案以下属于网站的管理 更新 维护
  • 塑胶加工 技术支持 东莞网站建设优化网站内容
  • 如何做好一个企业网站设计建立个机密网站
  • 网站海外推广资源常熟公司做网站
  • 慈溪企业网站建设公司硬件开发软件有哪些