Rotate Array

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].

空间复杂度为O(1):

public class Solution {
    public void rotate(int[] nums, int k) {
        int size = nums.length;
        int tmp = nums[size-1];
        for(int i=0;i<k;i++) {
            for(int j=size-2;j>=0;j--) {
                nums[j+1] = nums[j];
            }
            nums[0] = tmp;
            tmp = nums[size-1];
        }
    }
}

 

posted @ 2015-02-26 13:40  mrpod2g  阅读(79)  评论(0)    收藏  举报