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

容桂网站制作代理商广州网络推广公司

容桂网站制作代理商,广州网络推广公司,购物网站后台订单处理流程,网络工程专业学什么课程一,题目描述 二,算法原理 本题中要求给所有的零移动到数组末尾。相当于给数组划分区间。一部分是非零区间;一部分是零区间。针对区间问题通用的解法--双指针法。如图: 首先需要两个下标: 1,第一个下标负责分组[0,d]&#xff0c…

一,题目描述

二,算法原理

本题中要求给所有的零移动到数组末尾。相当于给数组划分区间。一部分是非零区间;一部分是零区间。针对区间问题通用的解法--双指针法。如图:

 

首先需要两个下标:

1,第一个下标负责分组[0,d],[d+1,c-1]。前者区间是非零数据,后者零数据的区间。

2,第二个下标负责分组有没有扫描数据[0,c-1],[c,数据末尾]。前者表示扫描过的数据,后者表示没有扫描。

从第一个数据开始扫描,若是非零数据,d加加。扫描位置的数据与d的位置进行交换。若是零,则d位置不变,c继续扫描数据。知道数组结束。分组结束。

具体例子:

d最开始没有进行分组,c从第一个位置开始扫描数据,第一个为0,d不变,c加加,继续扫描。

第二个位置数据位置,d加加。之后与c的位置进行交换。如图:

第三个位置数据为0,d不变,c加加扫描数据。

第四个位置数据为3不为零,d加加,与c位置的数据交换。如图:

 

第五个位置数据为12不为零,d加加,与c位置数据交换。如图:

 

c到数组末尾,扫描结束,分组结束。

三,代码实现

void moveZeroes(vector<int>& nums) {int dest = -1;int cur = 0;for(int i = 0 ; i < nums.size(); i++){if(nums[i] != 0){dest++;swap(nums[dest],nums[i]);}}}

四,练习

通过如下链接可以进行此题的练习:

283. 移动零 - 力扣(LeetCode) 

 

http://www.dtcms.com/wzjs/505564.html

相关文章:

  • 领动建站电子商务网站有哪些?
  • 成都市网站建设设计按效果付费的推广
  • 浩森宇特北京网站设计长尾关键词是什么
  • 做网站优化百度指数在线查询前100
  • 买了个域名 如何自己做网站培训机构排名一览表
  • 建设厅官方网站新资质标准创建网站的流程是什么
  • 公司网站建设备选方案评价标准域名检测
  • 深圳宝安区石岩街道关键词优化百家号
  • 网站开发可行性技术方案广告主广告商对接平台
  • 网站开发好的语言陕西网站建设网络公司
  • 一个简单校园网的设计新媒体seo培训
  • seo网站优化培训班常用的搜索引擎有哪些
  • 优秀的网页设计网站北京seo技术
  • 浙江省网站建设公司排名网络营销品牌公司
  • 国外的智慧城市建设网站百度手机助手官网
  • 专业网页设计工具360优化大师官方网站
  • jsp法院网站模板关键词优化排名平台
  • 查建设施工资质的网站站长之家查询工具
  • 郑州网站备案百度广告推广平台
  • 乌鲁木齐市疫情发布会最新消息百度上做优化一年多少钱
  • 奢侈品 网站建设方案社群营销的十大步骤
  • 寿光哪里做网站微信引流主动被加软件
  • 网站跳出率多少正常广告营销策略有哪些
  • 邵阳住建部网站百度快速排名软件
  • 做网站价格表百度一下就知道官方
  • 企业网站管理系统安装教程上海营销seo
  • 自己怎么做网站建设关键词搜索爱站网
  • 导航类网站怎么做排名朝阳网站建设
  • 怎么做微信辅助的网站seo优化首页
  • 小型网站设计及建设论文范本网络广告策划方案范文