移动零—leetcode283
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。
示例:
输入: [0,1,0,3,12]
输出: [1,3,12,0,0]
说明:
必须在原数组上操作,不能拷贝额外的数组。
尽量减少操作次数。
思路一:遍历将非0的值一次填到索引j所在的位置,最后将j+1之后的数置0;
class Solution {
public:void moveZeroes(vector<int>& nums) {int n = nums.size();if(0==n)return;int j=0;for(int i=0;i<n;++i){if(nums[i]!=0)nums[j++] = nums[i];}for(int i=j;i<n;++i)nums[i]=0;}
};
思路二:快慢指针的方法,刚开始自己写的,没有上面方法好理解,但是比较快
class Solution {
public:void moveZeroes(vector<int>& nums) {int n = nums.size();if(0==n)return;int zeroIndex = 0;int nozzeroIndex = 0;while(zeroIndex<n && nozzeroIndex<n){if(zeroIndex<=nozzeroIndex && nums[zeroIndex]==0 && nums[nozzeroIndex]!=0){nums[zeroIndex] = nums[nozzeroIndex];nums[nozzeroIndex] = 0;zeroIndex++;nozzeroIndex++;}else if(nums[zeroIndex]==0){nozzeroIndex++;}else if(nums[nozzeroIndex]!=0){zeroIndex++;}else{zeroIndex++;nozzeroIndex++;}}}
};
移动零—leetcode283相关推荐
- leetcode283.移动零
题目描述 题目分析 在写简单题放松,看到这道题第一个想法是用STL库函数,虽然知道大概要用双指针之类的,但是库函数爽哇. class Solution {public:void moveZeroes( ...
- leetcode283. 移动零 比官方更好的解法。
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序. 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 说明: 必须在原数组上操作, ...
- Leetcode--283. 移动零
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序. 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 说明: 必须在原数组上操作, ...
- 零基础入门--中文命名实体识别(BiLSTM+CRF模型,含代码)
https://github.com/mali19064/LSTM-CRF-pytorch-faster 中文分词 说到命名实体抽取,先要了解一下基于字标注的中文分词. 比如一句话 "我爱北 ...
- LeetCode简单题之复写零
题目 给你一个长度固定的整数数组 arr,请你将该数组中出现的每个零都复写一遍,并将其余的元素向右平移. 注意:请不要在超过该数组长度的位置写入元素. 要求:请对输入的数组 就地 进行上述修改,不要从 ...
- LeetCode简单题之柠檬水找零
题目 在柠檬水摊上,每一杯柠檬水的售价为 5 美元.顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯. 每位顾客只买一杯柠檬水,然后向你付 5 美元.10 美元或 20 美元.你必 ...
- LeetCode简单题之移动零
题目 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序. 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 说明: 必须在原数组上 ...
- 容器云原生DevOps学习笔记——第三期:从零搭建CI/CD系统标准化交付流程
暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...
- 图像零交叉点,视频生成,视频识别,视频摘要,视频浓缩
图像零交叉点,视频生成,视频识别,视频摘要,视频浓缩 一.视频生成,视频识别,视频摘要,视频浓缩 视频生成与视频识别 视频分析的两大任务,前者侧重于对下一帧的预测,而前者则侧重于视频内容的理解.由于视 ...
最新文章
- 【GCN】万字长文带你入门 GCN
- php 静态类在worker,GatewayWorker的Events.php中调用Worker::runAll()出现异常
- RecyclerView Item 布局宽高无效问题探究
- 命令行下mysql新建用户及分配权限
- MySQL 优化 —— EXPLAIN 执行计划详解
- requirejs 定义模块中含有prototype
- 通俗易懂!视觉slam第十部分——贝叶斯估计
- wps python 自动化_请教下 Python 高手,如何用 Python 自动化操作 Excel?
- Linux的文件的打包(tar方法)
- 计算机网络sequence number,计算机网络
- latex字母/数字双线字体
- 华为U2000北向接口开发中遇到的坑——获取HW_MSTPInventory管理对象失败
- 阿里云ACE认证之理解CDN技术 1
- catalina java opts_CATALINA_OPTS与JAVA_OPTS – 有什么区别?
- Shopee优选卖家真的重要吗?
- LAIC2022之犯罪事实实体识别(基于飞桨UIE+半监督)
- 经典游戏----飞机大战
- supervisor的程序控制修改参考方案
- python画雷达图-python 雷达图
- echarts实现西安地铁图
热门文章
- css预编译其器,CSS预处理器之——Less
- php内容管理系统开源源码,fcontex 开源内容管理系统 php版 v1.0.3
- java 读取word书签_Java 添加、读取、删除Word书签
- excel 插入图片 NPOI
- MongoDB数据导入hbase + 代码
- 牛客网(剑指offer) 第六题 旋转数组的最小数字
- snmp-smtp=smb扫描
- matlab球面波衍射,单色点源矩孔菲涅耳衍射光场的计算与模拟
- 英语发音表及读法_如何一个人练习英语口语?
- [论文阅读] (11)ACE算法和暗通道先验图像去雾算法(Rizzi | 何恺明老师)