Lecture Notes 01 April 2013 public class Combine { public static void printArray (int[] b, int size) { for (int i = 0; i < size; i++) { System.out.print (b[i] + " "); } System.out.println (); } public static void combine (int[] a, int[] b, int aIdx, int bIdx, int size) { int range = a.length - size + 1; if (bIdx == size) { printArray (b, size); } else { while (aIdx < range + bIdx) { b[bIdx++] = a[aIdx++]; combine (a, b, aIdx, bIdx, size); bIdx--; } } } public static void main (String[] args) { int [] a = {1, 2, 3, 4, 5}; int [] b = {0, 0, 0, 0, 0}; int size = 3; combine (a, b, 0, 0, size); } }