Q:

Python program to right rotate the elements of an array

belongs to collection: Python Array Programs

0

In this program, we need to rotate the elements of array towards its right by the specified number of times. An array is said to be right rotated if all elements of the array are moved to its right by one position. One approach is to loop through the array by shifting each element of the array to its next position. The last element of the array will become the first element of the rotated array.

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

ALGORITHM:

  • STEP 1: Declare and initialize an array.
  • STEP 2: Variable n will denote the number of times an array should be rotated toward its right.
  • STEP 3: The array can be right rotated by shifting its elements to a position next to them which can be accomplished by looping through the array in reverse order (loop will start from the length of the array -1 to 0) and perform the operation arr[j] = arr[j-1].
  • STEP 4: The last element of the array will become the first element of the rotated array.

All Answers

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

#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 right    
for i in range(0, n):    
    #Stores the last element of array    
    last = arr[len(arr)-1];    
        
    for j in range(len(arr)-1, -1, -1):    
        #Shift element of array by one    
        arr[j] = arr[j-1];    
            
    #Last element of the array will be added to the start of the array.    
    
    arr[0] = last;    
     
print();    
     
#Displays resulting array after rotation    
print("Array after right rotation: ");    
for i in range(0, len(arr)):    
    print(arr[i]),  

 

Output:

Original Array:
1   2   3   4   5
Array after right rotation:
3   4   5   1   2   

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

total answers (1)

Python program to sort the elements of an array in... >>
<< Python program to print the sum of all elements in...