ethan

ethan

新知,热爱生活,码农,读书
twitter
email
github

LCR 283. 移動零

給定一個數組 nums,編寫一個函數將所有 0 移動到數組的末尾,同時保持非零元素的相對順序。
請注意,必須在不複製數組的情況下原地對數組進行操作。

示例 1:

輸入:nums = [0,1,0,3,12]
輸出:[1,3,12,0,0]
示例 2:

輸入:nums = [0]
輸出:[0]

提示:
1 <= nums.length <= 104
-231 <= nums[i] <= 231 - 1
進階:你能儘量減少完成的操作次數嗎?

解法 1:雙指針

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++
	}
}
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。