Q:

Program to left rotate the elements of an array

belongs to collection: Array Programs

0

Explanation

In this program, we need to rotate the elements of an array towards the left by the specified number of times. In the left rotation, each element of the array will be shifted to its left by one position and the first element of the array will be added to end of the list. This process will be followed for a specified number of times.

Consider above array, if n is 1 then, all elements of the array will be moved to its left by one position such that second element of the array will take the first position, the third element will be moved to the second position and so on. The first element of the array will be added to the last of the array.

Algorithm

  1. Declare and initialize an array.
  2. Variable n will denote the number of times an array should be rotated toward its left.
  3. The array can be left rotated by shifting its elements to a position prior to them which can be accomplished by looping through the array and perform the operation arr[j] = arr[j+1].
  4. The first element of the array will be added to the last of rotated array.

Input:

arr = [1, 2, 3, 4, 5]  

Here, n determine the number of times an array should be rotated  

n = 3  

Output:

Original array: 1 2 3 4 5
Array after left rotation: 4 5 1 2 3

All Answers

need an explanation for this answer? contact us directly to get an explanation for this answer

Python

#Initialize array   
arr = [1, 2, 3, 4, 5];   
#n determine the number of times an array should be rotated  
n = 3;  
   
#Displays original array  
print("Original array: ");  
for i in range(0, len(arr)):  
    print(arr[i]),   
   
#Rotate the given array by n times toward left  
for i in range(0, n):  
    #Stores the first element of the array  
    first = arr[0];  
      
    for j in range(0, len(arr)-1):  
        #Shift element of array by one  
        arr[j] = arr[j+1];  
          
    #First element of array will be added to the end  
    arr[len(arr)-1] = first;  
   
print();  
   
#Displays resulting array after rotation  
print("Array after left rotation: ");  
for i in range(0, len(arr)):  
    print(arr[i]),  

 

Output:

Original array: 
1 2 3 4 5 
Array after left rotation: 
4 5 1 2 3 

 

C

#include <stdio.h>  
   
int main()  
{  
    //Initialize array   
    int arr[] = {1, 2, 3, 4, 5};   
    //Calculate length of array arr  
    int length = sizeof(arr)/sizeof(arr[0]);  
    //n determine the number of times an array should be rotated  
    int n = 3;  
      
    //Displays original array  
    printf("Original array: \n");  
    for (int i = 0; i < length; i++) {   
        printf("%d ", arr[i]);   
    }    
      
    //Rotate the given array by n times toward left  
    for(int i = 0; i < n; i++){  
        int j, first;  
        //Stores the first element of the array  
        first = arr[0];  
      
        for(j = 0; j < length-1; j++){  
            //Shift element of array by one  
            arr[j] = arr[j+1];  
        }  
        //First element of array will be added to the end  
        arr[j] = first;  
    }  
      
    printf("\n");  
      
    //Displays resulting array after rotation  
    printf("Array after left rotation: \n");  
    for(int i = 0; i < length; i++){  
        printf("%d ", arr[i]);  
    }  
    return 0;  
}  

 

Output:

Original array: 
1 2 3 4 5 
Array after left rotation: 
4 5 1 2 3 

 

JAVA

class RotateLeft {  
    
    public static void main(String[] args) {  
      
        //Initialize array   
        int [] arr = new int [] {1, 2, 3, 4, 5};   
        //n determine the number of times an array should be rotated  
        int n = 3;  
          
        //Displays original array  
        System.out.println("Original array: ");  
        for (int i = 0; i < arr.length; i++) {   
            System.out.print(arr[i] + " ");   
        }    
          
        //Rotate the given array by n times toward left  
        for(int i = 0; i < n; i++){  
            int j, first;  
            //Stores the first element of the array  
            first = arr[0];  
          
            for(j = 0; j < arr.length-1; j++){  
                //Shift element of array by one  
                arr[j] = arr[j+1];  
            }  
            //First element of array will be added to the end  
            arr[j] = first;  
        }  
          
        System.out.println();  
          
        //Displays resulting array after rotation  
        System.out.println("Array after left rotation: ");  
        for(int i = 0; i< arr.length; i++){  
            System.out.print(arr[i] + " ");  
        }  
    }  
}  

 

Output:

Original array: 
1 2 3 4 5 
Array after left rotation: 
4 5 1 2 3 

 

C#

using System;  
                      
public class RotateLeft  
{  
    public static void Main()  
    {  
        //Initialize array   
        int [] arr = new int [] {1, 2, 3, 4, 5};   
        //n determine the number of times an array should be rotated  
        int n = 3;  
          
        //Displays original array  
        Console.WriteLine("Original array: ");  
        for (int i = 0; i < arr.Length; i++) {   
            Console.Write(arr[i] + " ");   
        }    
          
        //Rotate the given array by n times toward left  
        for(int i = 0; i < n; i++){  
            int j, first;  
            //Stores the first element of the array  
            first = arr[0];  
          
            for(j = 0; j < arr.Length-1; j++){  
                //Shift element of array by one  
                arr[j] = arr[j+1];  
            }  
            //First element of array will be added to the end  
            arr[j] = first;  
        }  
          
        Console.WriteLine();  
          
        //Displays resulting array after rotation  
        Console.WriteLine("Array after left rotation: ");  
        for(int i = 0; i< arr.Length; i++){  
            Console.Write(arr[i] + " ");  
        }  
    }  
}  

 

Output:

Original array: 
1 2 3 4 5 
Array after left rotation: 
4 5 1 2 3 

 

PHP

<!DOCTYPE html>  
<html>  
<body>  
<?php  
//Initialize array   
$arr = array(1, 2, 3, 4, 5);   
//n determine the number of times an array should be rotated  
$n = 3;  
   
//Displays original array  
print("Original array: <br>");  
for ($i = 0; $i < count($arr); $i++) {   
    print($arr[$i] . " ");   
}    
      
//Rotate the given array by n times toward left  
for ($i = 0; $i < $n; $i++){  
    //Stores the first element of the array  
    $first = $arr[0];  
      
    for($j = 0; $j < count($arr)-1; $j++){  
        //Shift element of array by one  
        $arr[$j] = $arr[$j+1];  
    }  
    //First element of array will be added to the end  
    $arr[$j] = $first;  
}  
   
print("<br>");  
   
//Displays resulting array after rotation  
print("Array after left rotation: <br>");  
for ($i = 0; $i < count($arr); $i++) {   
    print($arr[$i] . " ");   
}      
?>  
</body>  
</html>  

 

Output:

Original array: 
1 2 3 4 5 
Array after left rotation: 
4 5 1 2 3 

need an explanation for this answer? contact us directly to get an explanation for this answer

total answers (1)

Program to print the duplicate elements of an arra... >>
<< Program to find the frequency of each element of a...