class Solution {
public:
//(aTbT)T == ba (T表示转置)
void rotate(vector<int>& nums, int k) {
int len = nums.size();
if(len <= 1) return;
k = k % len;
helper(nums, 0, len - k - 1);
helper(nums, len - k, len - 1);
helper(nums, 0, len - 1);
}
private:
void helper(vector<int>& nums, int left, int right) {
while(left < right) {
int temp = nums[left];
nums[left] = nums[right];
nums[right] = temp;
left++;
right--;
}
}
};
LeetCode189. 旋转数组
最新推荐文章于 2022-07-26 06:04:21 发布