力扣-移动零

文章目录

题目

原题链接:移动零

题解

思路:快慢指针(双指针)法

  • 慢指针(l):用于标记当前非零元素应该存放的位置。
  • 快指针(h):用于遍历整个数组。
java 复制代码
public class Test {
    public static void moveZeroes(int[] nums) {
        int l = 0, h = 0;
        for (; h < nums.length; h++) {
            if (nums[h] != 0) {
                nums[l++] = nums[h];
            }
        }
        for (; l < nums.length; l++) {
            nums[l] = 0;
        }
    }

    public static void main(String[] args) {
        int[] nums = {0, 1, 0, 3, 12};
        moveZeroes(nums);
        System.out.println(Arrays.toString(nums));
    }
}

❤觉得有用的可以留个关注❤

相关推荐
CUMT_DJ1 小时前
matlab计算算法的运行时间
开发语言·算法·matlab
KyollBM4 小时前
每日羊题 (质数筛 + 数学 | 构造 + 位运算)
开发语言·c++·算法
Univin6 小时前
C++(10.5)
开发语言·c++·算法
躬身入世,以生证道6 小时前
面试技术栈 —— 简历篇
面试·职场和发展
Asmalin6 小时前
【代码随想录day 35】 力扣 01背包问题 一维
算法·leetcode·职场和发展
剪一朵云爱着6 小时前
力扣2779. 数组的最大美丽值
算法·leetcode·排序算法
qq_428639616 小时前
虚幻基础:组件间的联动方式
c++·算法·虚幻
深瞳智检7 小时前
YOLO算法原理详解系列 第002期-YOLOv2 算法原理详解
人工智能·算法·yolo·目标检测·计算机视觉·目标跟踪
tao3556677 小时前
【Python刷力扣hot100】283. Move Zeroes
开发语言·python·leetcode
怎么没有名字注册了啊7 小时前
C++后台进程
java·c++·算法