【leetcode刷题记录】283移动零

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

下面是我愚蠢的第一反应,把每个零都冒泡到末端

class Solution {
    public void moveZeroes(int[] nums) {
        int count = 0;
        for(int i = nums.length - 1; i >= 0; i--) {
            if(nums[i] == 0) {
                for(int j = i; j < nums.length -1 - count; j++) {
                    nums[j] = nums[j + 1];
                    nums[j + 1] = 0;
                }
            }
        }
    }
}

版权声明:本文为Celeste_Damon原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。