Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Arrays;
- public class ReverseSolution {
- private static int[] array(int size) {
- int[] array = new int[size];
- for (int i = 0; i < size; i++) {
- array[i] = i + 1;
- }
- return array;
- }
- private static void reverse(final int[] array, final int start, final int end){
- int s=start;
- int e=end-1;
- while(s<e){
- int swap = array[s];
- array[s] = array[e];
- array[e] = swap;
- System.out.println("debug: " + Arrays.toString(array));
- s++;
- e--;
- }
- }
- public static void main(String[] args) {
- final int size = 10;
- final int shift = 3;
- assert size > 0;
- assert shift <= size;
- int[] array = array(size);
- System.out.println("debug: " + Arrays.toString(array));
- if (shift != size) {
- reverse(array, 0, size);
- reverse(array, 0, size-shift);
- reverse(array, size-shift, size);
- }
- System.out.println("done");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement