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. 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(' | ');

Tags:

Java Example