C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML
Q. Program to right rotate the elements of an array.
ExplanationIn 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
SolutionPython
#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 C#include Output: Original array: 1 2 3 4 5 Array after right rotation: 3 4 5 1 2 JAVA
class RotateRight {
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 right
for(int i = 0; i < n; i++){
int j, last;
//Stores the last element of array
last = arr[arr.length-1];
for(j = arr.length-1; j > 0; j--){
//Shift element of array by one
arr[j] = arr[j-1];
}
//Last element of array will be added to the start of array.
arr[0] = last;
}
System.out.println();
//Displays resulting array after rotation
System.out.println("Array after right rotation: ");
for(int i = 0; i< arr.length; i++){
System.out.print(arr[i] + " ");
}
}
}
Output: Original array: 1 2 3 4 5 Array after right rotation: 3 4 5 1 2 C#
using System;
public class RotateRight
{
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 right
for(int i = 0; i < n; i++){
int j, last;
//Stores the last element of array
last = arr[arr.Length-1];
for(j = arr.Length-1; j > 0; j--){
//Shift element of array by one
arr[j] = arr[j-1];
}
//Last element of array will be added to the start of array.
arr[0] = last;
}
Console.WriteLine();
//Displays resulting array after rotation
Console.WriteLine("Array after right rotation: ");
for(int i = 0; i< arr.Length; i++){
Console.Write(arr[i] + " ");
}
}
}
Output: Original array: 1 2 3 4 5 Array after right rotation: 3 4 5 1 2 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 right
for($i = 0; $i < $n; $i++){
//Stores the last element of array
$last = $arr[count($arr)-1];
for($j = count($arr)-1; $j > 0; $j--){
//Shift element of array by one
$arr[$j] = $arr[$j-1];
}
//Last element of array will be added to the start of array.
$arr[0] = $last;
}
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 right rotation: 3 4 5 1 2
Next Topic#
|