跳至主要內容

283_移动0

T4mako算法数组双指针小于 1 分钟

283_移动0

简单

题目描述open in new window

解法思路:双指针
只需 O(n) 时间复杂度即可解决
定义 left 和 right,right 指针遇到 0 则跳过,遇到数则赋值给 left 即可

class Solution {
    public void moveZeroes(int[] nums) {
        int left = 0,right = 0;
        while (right < nums.length){
            if (nums[right] != 0){
                nums[left++] = nums[right++];
            }else {
                right++;
            }
        }
        for(;left < nums.length;left++){
            nums[left] = 0;
        }
    }
}
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.5