Advertisement
Guest User

Untitled

a guest
Jul 7th, 2010
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 1.38 KB | None | 0 0
  1. import java.util.Arrays;
  2.  
  3. public class LifehackSolution {
  4.  
  5.     private static int[] array(int size) {
  6.         int[] array = new int[size];
  7.         for (int i = 0; i < size; i++) {
  8.             array[i] = i + 1;
  9.         }
  10.         return array;
  11.     }
  12.  
  13.     private static void tail(final int[] array, final int shift, final int position) {
  14.         if (position<array.length){
  15.             int remember = array[position];
  16.             tail(array, shift, position+1);
  17.             array[position-shift]=remember;
  18.             System.out.println("debug: " + Arrays.toString(array));
  19.         }
  20.     }
  21.  
  22.     private static void head(final int[] array, final int shift, final int position) {
  23.         if (position<shift){
  24.             int remember = array[position];
  25.             head(array,shift, position+1);
  26.             array[array.length-shift+position]=remember;
  27.             System.out.println("debug: " + Arrays.toString(array));
  28.         } else {
  29.             tail(array, shift, position);
  30.         }
  31.     }
  32.  
  33.     public static void main(String[] args) {
  34.         final int size = 10;
  35.         final int shift = 3;
  36.         assert size > 0;
  37.         assert shift <= size;
  38.         int[] array = array(size);
  39.         System.out.println("debug: " + Arrays.toString(array));
  40.         if (shift != size) {
  41.             head(array, shift, 0);
  42.         }
  43.         System.out.println("done");
  44.     }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement