https://leetcode.com/problems/move-zeroes/
把0移到後面,保持非0順序
Example 1:
Input: nums = [0,1,0,3,12]
Output: [1,3,12,0,0]
Example 2:
Input: nums = [0]
Output: [0]
October 1, 2024
兩個 pointer 一個設定為 0 的位置,一個用 loop 走
如果 loop 那個不是 0,就跟 0 那個交換,然後 0 那個++
class Solution:
def moveZeroes(self, nums: List[int]) -> None:
"""
Do not return anything, modify nums in-place instead.
"""
zero_pointer = 0
for i in range(len(nums)):
if nums[i] != 0:
nums[i], nums[zero_pointer] = nums[zero_pointer], nums[i]
zero_pointer += 1
class Solution:
def moveZeroes(self, nums: List[int]) -> None:
"""
Do not return anything, modify nums in-place instead.
"""
l = 0
for r in range(len(nums)):
if nums[l] == 0 and nums[r] != 0:
nums[l], nums[r] = nums[r], nums[l]
if nums[l] != 0:
l += 1
初始化 i, j = 0
while j ≤ len(array) -1