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

潍坊在线制作网站产品推广外包

潍坊在线制作网站,产品推广外包,随州市建设局网站,常州天狼网站建设网页直达: https://leetcode.cn/problems/move-zeroes 题目分析: 1.将0放到后面,然后不改变非零数字的相对位置. 双指针算法:利用数组下标来充当指针. cur指针:从左往右扫描数组,遍历数组 dest:已处理的区间,非零元素的最后一个位置. 分成三个区间: [ 0 ,dest] [ des…

网页直达:

https://leetcode.cn/problems/move-zeroes

题目分析:

1.将0放到后面,然后不改变非零数字的相对位置.

双指针算法:利用数组下标来充当指针.

cur指针:从左往右扫描数组,遍历数组

dest:已处理的区间,非零元素的最后一个位置.

分成三个区间:

[ 0 ,dest]     [ dest ,cur ]   [ cur , n-1]

[ 0 ,dest] :放非零元素

 [ dest ,cur ] :放零元素

 [ cur , n-1]:未遍历的数据

cur在向后面遍历的时候

1.遇到0元素,不管,cur++.

2.遇到非零元素,swap(dest+1,cur);dest++,cur++;

分析到这里其实已经讲完了.我们来回忆一下相似的题目,快速排序

快速排序:

基本思想其实和双指针法差不多:tmp是中间值

[0 ,tmp]     [tmp ,n-1]

[0 ,tmp]:是小于tmp的值

[tmp ,n-1]:是大于tmp的值

代码实现:

无注释:

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]);}}}
};

注释:

class Solution {
public:void moveZeroes(vector<int>& nums) {for(int cur=0,dest=-1;cur<nums.size();cur++ )//cur遍历数组{if(nums[cur]!=0)//如果为零就在[0,dset]里面{swap(nums[++dest],nums[cur]);//交换}}}
};

http://www.dtcms.com/a/542158.html

相关文章:

  • 海淀教育互动平台seo高效优化
  • Java8:Lambda表达式
  • 医院网站建设 价格石家庄网站优化招聘
  • 【AIGC】2025:MV-Crafter: An Intelligent System for Music-guided Video Generation
  • 电脑版网站建设合同营销网站开发
  • 下载office home and student 2019版本
  • 东莞南城网站建设公司怎么样免费流程图制作网站
  • 锦州做网站公司判断网站模板版本
  • 【测试理论和实践 3.BUG篇】
  • 媒体网站建设包头移动官网网站建设
  • 金华网站建设报价系统优化助手
  • Ninja Ripper游戏模型贴图提取
  • 51c大模型~合集43
  • 做网站开发要学什么网站营销的定义
  • 【GESP/CSP】编程武器库-3, 十六进制转换十进制
  • 客服AI软件正在改变新人培训的方式
  • Vue 3 + Element Plus 表格操作封装:useTableOperations 组合式函数详解
  • 可信网站值得做吗企业网站建设哪家公司好
  • 上海中小企业网站深圳网络推广引流
  • 网站备案管局电话福建省建设职业管理中心网站
  • 健康管理虚拟仿真实训室:模拟诊疗,实战演练
  • 个人网站备案要钱吗最容易做流量的网站
  • html+jsp个人网站模板全国分类信息网站排名
  • 2025年GDPR合规全景:原则、实践与行业案例
  • Winform控件:Combobox
  • 义乌水务建设集团官方网站佛山市网站建设分站多少钱
  • iOS 应用加固软件选型与落地 多工具组合构建可审计的 IPA 混淆与加固流水线
  • 做网站手机端不做PC可以吗怎么做弹幕小视频网站
  • 网站移动端怎么做的免费的高清视频素材网站
  • 类变量和类方法main方法代码块单例设计模式final关键字