Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

Java Program to Print array after it is right rotated K times

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

Given an Array of size N and a values K, around which we need to right rotate the array. How to quickly print the right rotated array?
Examples : 
 

Input: Array[] = {1, 3, 5, 7, 9}, K = 2.
Output: 7 9 1 3 5
Explanation:
After 1st rotation - {9, 1, 3, 5, 7}
After 2nd rotation - {7, 9, 1, 3, 5}

Input: Array[] = {1, 2, 3, 4, 5}, K = 4.
Output: 2 3 4 5 1      

 

Approach:
 

  1. We will first take mod of K by N (K = K % N) because after every N rotations array will become the same as the initial array. 
     
  2. Now, we will iterate the array from i = 0 to i = N-1 and check, 
    • If i < K, Print rightmost Kth element (a[N + i -K]). Otherwise, 
       
    • Print array after ‘K’ elements (a[i – K]). 
       

Below is the implementation of the above approach. 
 

Java




// Java Implementation of Right Rotation 
// of an Array K number of times
import java.util.*;
import java.lang.*;
import java.io.*;
  
class Array_Rotation
{
  
// Function to rightRotate array
static void RightRotate(int a[], 
                        int n, int k)
{
      
    // If rotation is greater 
    // than size of array
    k=k%n;
  
    for(int i = 0; i < n; i++)
    {
        if(i<k)
        {
            // Printing rightmost 
            // kth elements
            System.out.print(a[n + i - k] 
                             + " ");
        }
        else
        {
            // Prints array after
            // 'k' elements
            System.out.print(a[i - k] 
                             + " ");
        }
    }
    System.out.println();
}
      
// Driver program
public static void main(String args[])
{
    int Array[] = {1, 2, 3, 4, 5};
    int N = Array.length;
  
    int K = 2;
    RightRotate(Array, N, K);
  
}
}
// This code is contributed by M Vamshi Krishna

Output: 

4 5 1 2 3

 

Time complexity : O(n) 
Auxiliary Space : O(1)
 

Please refer complete article on Print array after it is right rotated K times for more details!


My Personal Notes arrow_drop_up
Last Updated : 25 Jan, 2022
Like Article
Save Article
Similar Reads
Related Tutorials