基础知识

C+±–reverse指定翻转的区域

示例代码

class Solution {
public:
    void rotate(vector<int>& nums, int k) {
        int len=nums.size();
        int start=0,end=len-k%len;
        //reverse翻转的区间是左闭右开 [start, end)
        reverse(nums.begin(),nums.begin()+end);
        reverse(nums.begin()+end,nums.end());
        reverse(nums.begin(),nums.end());

    }
};
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

效果展示

LeetCode---189. 轮转数组(reverse的用法)_算法