[leetcode]移动零

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

示例:

输入: [0,1,0,3,12]
输出: [1,3,12,0,0]
说明:

  1. 必须在原数组上操作,不能拷贝额外的数组。
  2. 尽量减少操作次数。
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    class Solution {
    public void moveZeroes(int[] nums) {

    int k=0;
    for(int i=0;i<nums.length;i++){
    if(nums[i]!=0){
    nums[k]=nums[i];
    k++;
    }
    }
    while (k<nums.length){
    nums[k]=0;
    k++;
    }
    }
    }
分享