算法:1.移动零
2026/3/25 20:26:06 网站建设 项目流程

双指针

283. 移动零 - 力扣(LeetCode)

解法思路:,设计cur和dest两个指针。使用cur扫描整个数组,将数组划分为三个区域,[0,dest]为非零区,[dest+1,cur]为零区,[cur,n-1]为待处理区。

从第一次判断处理或不处理到最后完成0与非0值的分区都满足解法思路。

代码展示:

public void moveZeroes(int[] nums){ int cur = 0; int dest = -1; while(cur<nums.length){ if(nums[cur]!=0){ int tmp = nums[dest+1]; nums[dest+1]=nums[cur]; nums[cur]=tmp; cur++; dest++; }else{ cur++; } } }

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询