Problem Statement:
Rotate array by K with constraints
Time Complexity: O(n)
Space Complexity : O(1)
For K=3
Notice that 1 is poped out and pushed at the back of 10 , similar thing happened for 2 and 3 as well.
Solution:
Our approach will consist of three steps.
1. Reverse (0 to K )
2. Reverse (K+1 to len-1)
3. Reverse Entire array.
Lets See this by fig.
Implementation of the above approach:
Please post your comments and suggestions
Happy Coding !! :)
Rotate array by K with constraints
Time Complexity: O(n)
Space Complexity : O(1)
For K=3
Notice that 1 is poped out and pushed at the back of 10 , similar thing happened for 2 and 3 as well.
Solution:
Our approach will consist of three steps.
1. Reverse (0 to K )
2. Reverse (K+1 to len-1)
3. Reverse Entire array.
Lets See this by fig.
![]() |
Fig : Step wise transformation of array. |
Implementation of the above approach:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | /** * Rotate array by k */ void rotate2( int [] arr, int k) { if (k<= 0 || arr== null || arr.length== 0 ) return ; int [] old = Arrays.copyOf(arr, arr.length); k--; int i= 0 ,j=k,len=arr.length; for (; i <=k/ 2 ; i++,j--) swap(arr, i, j); int temp= i + (len-i)/ 2 ; for (i=k+ 1 ,j= arr.length- 1 ; i <= temp ; i++,j--) swap(arr, i, j); for (i= 0 ,j= len- 1 ; i <len arr= "" i= "" j--= "" j= "" old= "" rrays.tostring= "" swap= "" system.out.println= "" >"+ Arrays.toString(arr)); } </len> |
Please post your comments and suggestions
Happy Coding !! :)
off white
ReplyDeleteyeezy supply
yeezy boost 350 v2
curry 6
off white hoodie
yeezys
supreme clothing
yeezy 500
hermes birkin
kd shoes