Untitled
unknown
plain_text
2 years ago
1.0 kB
7
Indexable
import java.util.Arrays;
public class rotateArray {
public static void swap(int[] arr, int left, int right) {
int swap = arr[left];
arr[left] = arr[right];
arr[right] = swap;
}
public static void reverseArray(int[] arr, int left, int right) {
while (left < right) {
swap(arr, left, right);
left++;
right--;
}
}
public static int[] rotateArray(int[] arr, int k) {
k = k % arr.length;
if (arr.length == 0 || arr.length == 1 || k == 0) {
return arr;
}
int pivot = arr.length - k;
reverseArray(arr, pivot, arr.length - 1);
reverseArray(arr, 0, pivot - 1);
reverseArray(arr, 0, arr.length - 1);
return arr;
}
public static void main(String[] args) {
int[] arr = { 1, 2, 3, 4 };
int k = 7;
System.out.println(Arrays.toString(rotateArray(arr, k)));
}
}
Editor is loading...
Leave a Comment