LeetCCode每日一题第283题
首先解题思路:将数组中不为0的数排序,即将0剔出,j为新排好的数组长度,令i=j将剔出的0接在后边即可。
- 代码如下:
class Solution {
public void moveZeroes(int[] nums) {//注意void无需返回值
if(nums == null){
return; //空数组直接返回空气
}
int j = 0;
for(int i=0;i<nums.length;i++){
if(nums[i] != 0){
nums[j++] = nums[i];//定义一个j来放不为0的数
}
}
for(int i=j;i<nums.length;i++){
nums[i]=0;//将0放在末尾
}
}
图解: