码迷,mamicode.com
首页 > 其他好文 > 详细

189. Rotate Array

时间:2016-08-07 20:00:38      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:

 1 class Solution {
 2 public:
 3     void rotate(vector<int>& nums, int k) {
 4         if (nums.size() == 0 || k < 0) return;
 5         else {
 6             int l = k % nums.size();
 7             if (l == 0) return;
 8             for (int i = 0; i <= (nums.size() - 1) / 2; ++ i) {
 9                 int temp = nums[i];
10                 nums[i] = nums[nums.size() - i - 1];
11                 nums[nums.size() - i - 1] = temp;
12             }
13             for (int i = 0; i <= (l - 1) / 2; ++ i) {
14                 int temp = nums[i];
15                 nums[i] = nums[l - i - 1];
16                 nums[l - i - 1] = temp;
17             }
18             for (int i = l; i <= (nums.size() - 1 + l) / 2; ++ i) {
19                 int temp = nums[i];
20                 nums[i] = nums[l + nums.size() - 1 - i];
21                 nums[l + nums.size() - 1 - i] = temp;
22             }
23         }
24     }
25 };

 

189. Rotate Array

标签:

原文地址:http://www.cnblogs.com/shadowwalker9/p/5746827.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!