Write a function called rotate which takes an array and a number, and moves each element however many spaces the number is to the right. For the value at the end of the array, rotate should move it back to the beginning. javascript code example
Example 1: array rotation program in java
//Rotating array left
//d = number of rotations
static void rotLeft(int[] a, int d)
{
//using secondary array of same size
int [] n = new int[a.length];
//saving element into array n[] according to newlocation of rotations(d)
for(int i = 0; i < a.length; i++)
{
int newlocation = (i+(a.length - d))% a.length;
n[newlocation] = a[i];
}
//printing new rotated array
for(int i = 0; i < a.length; i++)
{
System.out.print(n[i]+ " ");
}
}
Example 2: rorate array
function rotateArray(A, K) {
if (!A.length) return A;
let index = -1;
while (++index < K) {
A.unshift(A.pop());
}
return A;
}
[
rotateArray([3, 8, 9, 7, 6], 3),
rotateArray([0, 0, 0], 1),
rotateArray([1, 2, 3, 4], 4),
rotateArray([], 4),
].join(' | ');