(189)轮转数组
我的解法:
首先对轮转数k进行处理,将k转换到[0,n-1]范围内;
接着将数组整体翻转,然后再将数组划分为两部分:[0,k-1],[k,n-1]分别将其翻转。
class Solution {
public:
void rotate(vector<int>& nums, int k) {
int n = nums.size();
k = k % n;
reverse(nums.begin(),nums.end());
reverse(nums.begin(),nums.begin() + k);
reverse(nums.begin() + k,nums.end());
}
};