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

解法二:
class Solution {
public void moveZeroes(int[] nums) {
int n = nums.length, left = 0, right = 0;
while (right < n) {
if (nums[right] != 0) {
swap(nums, left, right);
left++;
}
right++;
}
}
public void swap(int[] nums, int left, int right) {
int temp = nums[left];
nums[left] = nums[right];
nums[right] = temp;
}
}

最后
以上就是瘦瘦御姐最近收集整理的关于283. 移动零 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。的全部内容,更多相关283.内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复