Write a program to rotate an array by k positions to the right. For example, [1, 2, 3, 4, 5]rotated right by 2 positions is [4, 5, 1, 2, 3].

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:

C Example