Given an array of N elements and an integer D. Your task is to rotate the array D times in a circular manner from the right to left direction. Consider the examples for better understanding:-
Example 1: gfg cyclic array rotation
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: 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(' | ');