0189.轮转数组

方法一:反转数组

时间复杂度 $O(n)$,空间复杂度 $O(1)$。

先反转整个数组,再反转前 $k$ 个元素,最后反转剩余元素。

impl Solution {
    pub fn rotate(nums: &mut Vec<i32>, k: i32) {
        let k = k as usize % nums.len();
        nums.reverse();
        nums[..k].reverse();
        nums[k..].reverse();
    }
}