赞
踩
对于当前数组进行调整,不使用额外空间,那么既用双指针。
首先,两个指针都指向同一个位置,i=j=0,如果移动指针i的位置不为0则进行交换,固定指针+1,如果为0的话,固定指针不变,移动指针往后面移一直找。这样的话固定指针就会指在0的位置,相当于移动指针遇到非0就和0进行交换。
- class Solution:
- def moveZeroes(self, nums: List[int]) -> None:
- """
- Do not return anything, modify nums in-place instead.
- """
- i = j = 0
- for i in range(len(nums)):
- if nums[i] != 0:
- nums[j] , nums[i]= nums[i] , nums[j]
- j += 1
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。