标签:
Rotate an array of n elements to the right by k steps.
For example, with n = 7 and k = 3, the array [1,2,3,4,5,6,7]
is rotated to [5,6,7,1,2,3,4]
.
1 class Solution { 2 public: 3 void rotate(vector<int>& nums, int k) { 4 int len = nums.size(); 5 k=k%len; 6 std::vector<int> vec(nums); 7 for(int i = 0; i < len-k; i++){ 8 nums[i+k] = vec[i]; 9 } 10 for(int i = len-k; i < len; i++,k-=2){ 11 nums[len-i-k] = vec[i]; 12 } 13 } 14 };
标签:
原文地址:http://www.cnblogs.com/forlihui/p/4935412.html