题目:
解法一:使用双指针滑动
class Solution:
def moveZeroes(self, nums):
"""
Do not return anything, modify nums in-place instead.
"""
i = 0
for j in range(len(nums)):
if nums[j] != 0:
t = nums[i]
nums[i] = nums[j]
nums[j] = t
i = i + 1
if __name__ == '__main__':
print('num =')
arr = input("") #输入一个一维数组,每个数之间使空格隔开
num = [int(n) for n in arr.split()]
w = Solution()
w.moveZeroes(num)
print('result = ',num)
解法二:使用python的语法特点,简单粗暴
class Solution:
def moveZeroes(self, nums):
for i in range(nums.count(0)):
nums.remove(0)
nums.append(0)
if __name__ == '__main__':
print('num =')
arr = input("") #输入一个一维数组,每个数之间使空格隔开
num = [int(n) for n in arr.split()]
w = Solution()
w.moveZeroes(num)
print('result = ',num)