LeetCode算法入门之双指针—283. 移动零
2022/2/5 1:17:02
本文主要是介绍LeetCode算法入门之双指针—283. 移动零,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。
示例 1: 输入: nums = [0,1,0,3,12] 输出: [1,3,12,0,0] 示例 2: 输入: nums = [0] 输出: [0]
思路:
设置一个j,表示非0数的个数,循环遍历数组, 如果不是0,将非0值移动到第j位置,然后j+ 1 遍历结束之后,j值表示为非0的个数,再次遍历,从j位置后的位置此时都应该为0
代码:
class Solution { public void moveZeroes(int[] nums) { int n=nums.length; int j=0; int i=0; for(i=0;i<n;i++){ if(nums[i]!=0){ nums[j++]=nums[i]; } } for(i=j;i<n;i++){ nums[i]=0; } } }
这篇关于LeetCode算法入门之双指针—283. 移动零的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-03微信支付提示下单账户与支付账户不一致-icode9专业技术文章分享
- 2024-07-03微信支付提示订单号重复-icode9专业技术文章分享
- 2024-07-02微服务启动nacos注册上去了,但是一直没有收到请求-icode9专业技术文章分享
- 2024-07-02如何检查文件的编码格式-icode9专业技术文章分享
- 2024-07-02sublime 更改编码格式-icode9专业技术文章分享
- 2024-06-30uniAPP 实现全屏左右滚动滚动的效果-icode9专业技术文章分享
- 2024-06-30如何在本地使用授权或插件-icode9专业技术文章分享
- 2024-06-30伪静态规则配置方法汇总-icode9专业技术文章分享
- 2024-06-29易优CMS安装常见问题汇总-icode9专业技术文章分享
- 2024-06-28易优新手必读安装教程-icode9专业技术文章分享