Python Program for Reversal algorithm for array rotation
This article will teach you, how to use the Reversal algorithm for array using the python program.
Example
arr = [ 1, 2, 3, 4, 5, 6, 7, 8 ]
Rotated by k = 3 =========> arr = [ 6, 7, 8, 1, 2, 3, 4, 5 ]
Explanation
- First we reverse the whole array.
- Now, we reverse the k element.
- And then finally, reverse the remaining element.
- And then we print the new array.
Program
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | # Reveral in array using python # reverse the element def reverse(arr, start, end): while start < end: arr[start], arr[end] = arr[end], arr[start] start += 1 end -= 1 # rotation def rotation(arr,k): n = len(arr) reverse(arr, 0, n-1) # Reverse the whole array reverse(arr, 0, k-1) # Reverse the k element reverse(arr, k, n-1) # Reverse the remaning array return arr # array arr = [1,2,3,4,5,6,7,8] k = 3 print(rotation(arr,k)) |
Output
[6, 7, 8, 1, 2, 3, 4, 5]