难度简单1160
给定一个数组 nums
,编写一个函数将所有 0
移动到数组的末尾,同时保持非零元素的相对顺序。
示例:
输入:[0,1,0,3,12]
输出:[1,3,12,0,0]
说明:
- 必须在原数组上操作,不能拷贝额外的数组。
- 尽量减少操
作次数。public class Solution { public void MoveZeroes(int[] nums) { if (nums.Length!=0) { int count=0,temp=0; for(int i = 0;i<=nums.Length-1;i++) { if (nums[i]==0) count++; } while (count>0) { for(int j=0;j<=nums.Length-2;j++) { if (nums[j]==0) { temp=nums[j+1]; nums[j+1]=0; nums[j]=temp; } } count--; } } } }