本文共 659 字,大约阅读时间需要 2 分钟。
结束条件:nums内部移动完毕,把前条件中取出的k个元素一次放到nums前面对应的位置
class Solution {public: void rotate(vector & nums, int k) { if ( nums.size() <= 1 || k == 0) return; if ( nums.size() <= k ) k = k % nums.size(); vector temp; temp.assign(nums.begin() + nums.size()-k, nums.end()); for (int i = nums.size()-k-1; i >= 0; --i){ nums[i+k] = nums[i]; } for (int i = 0; i < temp.size(); ++i){ nums[i] = temp[i]; } }};
转载地址:http://jjpbb.baihongyu.com/