方法一:暴力方法
解题思路:
用栈存储后面的 k 个元素,然后将 nums 数组的元素往后挪 k 位,然后再将栈中的元素存进nums数组中。
class Solution {
public:
void rotate(vector<int>& nums, int k) {
int n = nums.size();
k = k % n;
//存在一个stack中
stack<int> ca;
for(int i = 0; i < k; i++){
ca.push(nums[n - 1 - i]);
}
for(int i = 0; i < n-k; i++){
nums[n-1-i] = nums[n-1-k-i];
}
int i = 0;
while(!ca.empty()){
nums[i] = ca.top();
i++;
ca.pop();
}
}
};