array rotation code example
Example 1: gfg cyclic array rotation
# include <iostream>
using namespace std;
void rotate(int arr[], int n)
{
int last = arr[n - 1], i;
for (i = n - 1; i > 0; i--)
arr[i] = arr[i - 1];
arr[0] = last;
}
int main()
{
int arr[100], i;
int n, turns;
cin >> n;
for(i=0;i<n;i++){
scanf("%d", &arr[i]);
}
cin >> turns;
while(turns>=1){
rotate(arr,n);
turns--;
}
for(i=0;i<n;i++){
cout << arr[i] << " ";
}
return 0;
}
Example 2: array rotation program in java
static void rotLeft(int[] a, int d)
{
int [] n = new int[a.length];
for(int i = 0; i < a.length; i++)
{
int newlocation = (i+(a.length - d))% a.length;
n[newlocation] = a[i];
}
for(int i = 0; i < a.length; i++)
{
System.out.print(n[i]+ " ");
}
}
Example 3: 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(' | ');