概述
做好初始定义
移动零
\\我的解法
for i in range(nums.count(0)):
nums.remove(0)
nums.append(0)
\\执行用时:112 ms, 在所有 Python3 提交中击败了17.37% 的用户
\\内存消耗:14.1 MB, 在所有 Python3 提交中击败了30.51% 的用户
\\ 官方解法
n = len(nums)
i = -1
j = 0
# nums[0....i]表示非0元素的数列,初始值i=-1
while j <= n-1:
if nums[j] != 0:
i += 1
nums[i] = nums[j]
j += 1
for k in range(i+1, n):
nums[k] = 0
\\ 执行用时:44 ms, 在所有 Python3 提交中击败了68.20% 的用户
\\内存消耗:14.3 MB, 在所有 Python3 提交中击败了5.30% 的用户
移除元素
\\我的解法 比官方用时短
i = -1
j = 0
n = len(nums)
while j < n:
if nums[j] != val:
j+