283. 移动零——Java

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。

示例:
输入: [0,1,0,3,12]
输出: [1,3,12,0,0]

说明:
必须在原数组上操作,不能拷贝额外的数组。
尽量减少操作次数。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/move-zeroes

方法:指针

在这里插入图片描述

public static void moveZeroes(int[] nums) {
    
    
    int j = 0;
    for (int i = 0; i < nums.length; i++) {
    
    
        if (nums[i] != 0) {
    
    
            nums[j++] = nums[i];
        }
    }
    while (j < nums.length) {
    
    
        nums[j++] = 0;
    }
}

猜你喜欢

转载自blog.csdn.net/m0_46390568/article/details/108089803