283. 移动零

package leetcode;


public class demo_283 {
    public void moveZeroes(int[] nums) {
        //记录当前元素之前有几个0
        int count=0;
        for(int i=0;i<nums.length;i++) {
            //当前元素之前有几个0,当前非0元素就往前移动几位
            if(nums[i]==0) {
                count=count+1;
            }
            else {
                nums[i-count]=nums[i];
            }
        }
        //补齐之后的0
        for(int i=nums.length-count;i<nums.length;i++) {
            nums[i]=0;
        }
        for (int i = 0; i < nums.length; i++) {
            System.out.println(nums[i]);;
            
        }
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        demo_283 demo=new demo_283();
        int[] nums= {0,1,0,3,12};
        demo.moveZeroes(nums);
    }

}

 

posted on 2022-04-11 11:40  一仟零一夜丶  阅读(38)  评论(0)    收藏  举报