給定一個整數數組 nums,將所有 0 移動到它的末尾,同時保持非零元素的相對順序。
Python
方法一 :
迴圈判斷不等於0的數,帶入array,最後在尾端補0
class Solution(object):
def moveZeroes(self, nums):
i=0
for num in nums:
if num!=0:
nums[i]=num
i+=1
for j in range(i,len(nums)):
nums[j]=0
方法二 :
當數值等於0時,將他remove掉,再append在最後面
class Solution(object):
def moveZeroes(self, nums):
for i in nums:
if i == 0:
nums.remove(i)
nums.append(i)
return nums
C++
迴圈判斷不等於0的數,帶入array,最後在尾端補0
class Solution {
public:
void moveZeroes(vector<int>& nums) {
int i = 0;
for (int j = 0; j < nums.size(); j++) {
if (nums[j] != 0) {
nums[i] = nums[j];
i++;
}
}
for (int j = i; j < nums.size(); j++) {
nums[j] = 0;
}
}
};