/*
* @lc app=leetcode id=189 lang=cpp
*
* [189] Rotate Array
*/
// @lc code=start
class Solution {
public:
void rotate(vector<int>& nums, int k) {
int N = nums.size();
k %= N;
for(int i=0;i<N/2;i++){
swap(nums[i],nums[N-1-i]);
}
for(int i=0;i<k/2;i++){
swap(nums[i],nums[k-1-i]);
}
for(int i=k;i<(N+k)/2;i++){
swap(nums[i],nums[N-1+k-i]);
}
}
};
// @lc code=end
No.237 - LeetCode[169] Majority Element - 经典k步长翻转
最新推荐文章于 2025-12-02 18:04:47 发布
本文介绍了一种有效的旋转数组算法实现方法。通过三次翻转操作,该算法能够在原地完成数组的旋转,避免了额外的空间开销。文章详细展示了具体的代码实现,并解释了每个步骤的工作原理。

740

被折叠的 条评论
为什么被折叠?



