跳转至

LC189 - 轮转数组

RotateArray.go
package Array

func rotate(nums []int, k int) {
    size := len(nums)
    k = k % size
    reverse(nums, 0, size-1)
    reverse(nums, 0, k-1)
    reverse(nums, k, size-1)
}

func reverse(nums []int, start, end int) {
    for i, j := start, end; i < j; i, j = i+1, j-1 {
        nums[i], nums[j] = nums[j], nums[i]
    }
}

注意需要先对 k 取模