前进k步,k可能大于数组。
void rotate(vector & nums, int k) { if (k == 0 || nums.size() == 1) return ; if (k > nums.size()) k = k % nums.size(); vector ret(nums.size()); copy(nums.begin(), nums.end() - k, ret.begin() + k); copy(nums.end() - k, nums.end(), ret.begin()); swap(ret, nums); }
。。。