Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Arrays;
- public class LifehackSolution {
- 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 tail(final int[] array, final int shift, final int position) {
- if (position<array.length){
- int remember = array[position];
- tail(array, shift, position+1);
- array[position-shift]=remember;
- System.out.println("debug: " + Arrays.toString(array));
- }
- }
- private static void head(final int[] array, final int shift, final int position) {
- if (position<shift){
- int remember = array[position];
- head(array,shift, position+1);
- array[array.length-shift+position]=remember;
- System.out.println("debug: " + Arrays.toString(array));
- } else {
- tail(array, shift, position);
- }
- }
- 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) {
- head(array, shift, 0);
- }
- System.out.println("done");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement