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

Rotate Array

时间:2015-03-03 21:52:41      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

方法一:直接开个100010的数组水过。

方法二:编程之美上O(1)的额外空间开销

void reserve(int nums[],int n,int k)
{
    int temp;
    for(int i = k ; i < (n+k)/2 ; i++) {
        temp = nums[i];
        nums[i] = nums[n-i-1+k];
        nums[n-i-1+k] = temp;
    }
}
void rotate(int nums[], int n, int k) {
    k = k%n;
    reserve(nums,n-k,0);
    reserve(nums,n,n-k);
    reserve(nums,n,0);
}

 

Rotate Array

标签:

原文地址:http://www.cnblogs.com/llei1573/p/4311904.html

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