您的位置:首页 > 其它

283. Move Zeroes--LeetCode Record

2016-07-10 00:18 162 查看
Given an array nums, write a function to move all 0’s to the end of it while maintaining the relative order of the non-zero elements.

For example, given nums = [0, 1, 0, 3, 12], after calling your function, nums should be [1, 3, 12, 0, 0].

func moveZeroes(inout nums: [Int]) {
var zeroCount:Int = 0

for index in 0..<nums.count {
if nums[index] == 0 {
zeroCount++
continue
}
swap(&nums, index, index - zeroCount)
}
}

func swap(inout nums: [Int], _ p:Int , _ q:Int) {
if p <= (nums.count - 1) && q <= (nums.count - 1) {
var num:Int = nums[q]
nums[q] = nums[p]
nums[p] = num
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  LeetCode