Open In App

C Program for Program to cyclically rotate an array by one

Improve
Improve
Like Article
Like
Save
Share
Report

Given an array, cyclically rotate the array clockwise by one.

Examples:

Input  :  arr[] = {1, 2, 3, 4, 5}
Output : arr[] = {5, 1, 2, 3, 4}

C++




// C++ code for program to
// cyclically rotate an array by one
 
# include <iostream>
 
using namespace std;
 
// Method
void rotate(int arr[], int n)
{
    int x = arr[n - 1], i;
    for (i = n - 1; i > 0; i--)
    arr[i] = arr[i - 1];
    arr[0] = x;
}
 
// Main driver method
int main()
{
    int arr[] = {1, 2, 3, 4, 5}, i;
    int n = sizeof(arr) /
            sizeof(arr[0]);
 
    cout << "Given array is \n";
    for (i = 0; i < n; i++)
        cout << arr[i];
 
    rotate(arr, n);
 
    cout << "\nRotated array is\n";
    for (i = 0; i < n; i++)
        cout << arr[i];
 
    return 0;
}
 
// This code is contributed by jit_t


C




#include <stdio.h>
 
void rotate(int arr[], int n)
{
   int x = arr[n-1], i;
   for (i = n-1; i > 0; i--)
      arr[i] = arr[i-1];
   arr[0] = x;
}
 
int main()
{
    int arr[] = {1, 2, 3, 4, 5}, i;
    int n = sizeof(arr)/sizeof(arr[0]);
 
    printf("Given array is\n");
    for (i = 0; i < n; i++)
        printf("%d ", arr[i]);
 
    rotate(arr, n);
 
    printf("\nRotated array is\n");
    for (i = 0; i < n; i++)
        printf("%d ", arr[i]);
 
    return 0;
}


Output

Given array is 
12345
Rotated array is
51234

Time Complexity: O(n)

Auxiliary Space: O(1)

Please refer complete article on Program to cyclically rotate an array by one for more details!



Last Updated : 08 Aug, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads