数据结构第一板块:Array——leetcode 283

数据结构第一板块:Array——leetcode 283_第1张图片
思想:

除了用暴力法(发现一个0就计数,然后把后面所有的数前移一位,最后把0补齐),可以用双指针。
双指针,一慢一快,慢指针指着0位置,快指针指着数字,如果遇到数字就和0位置互换,然后慢指针指下一个0位置。

func moveZeroes(nums []int)  {
     
	left, right, n := 0, 0, len(nums)  
    for right < n {
       // 、
        if nums[right] != 0 {
     
            nums[left], nums[right] = nums[right], nums[left]
            left++
        }
        right++
    }
}

你可能感兴趣的:(算法与数据结构,数据结构,leetcode,算法)