Not a member of GistPad yet?
Sign Up,
it unlocks many cool features!
- class Solution {
- public void reverse(int[] nums, int i, int j)
- {
- while(i<=j)
- {
- int temp = nums[i];
- nums[i] = nums[j];
- nums[j] = temp;
- i++;
- j--;
- }
- }
- public void rotate(int[] nums, int k) {
- int n = nums.length;
- k = k%n;
- // rotate first whole array
- reverse(nums,0,n-1); // [7,6,5,4,3,2,1]
- // rotate first k elements
- reverse(nums,0,k-1); // [5,6,7,4,3,2,1]
- // rotate from kth element to last
- reverse(nums,k,n-1); // [5,6,7,1,2,3,4]
- }
- }
RAW Paste Data
Copied
