package com.interview.recursion;
/**
* http://www.geeksforgeeks.org/print-all-possible-combinations-of-r-elements-in-a-given-array-of-size-n/
*/
public class CombinationOfSizeK {
public void combination(int arr[],int k){
int result[] = new int[k];
combinationUtil(arr,k,0,result,0);
}
private void combinationUtil(int arr[],int k, int pos,int result[],int start){
if(pos == k){
for(int i=0; i < k; i++){
System.out.print(result[i] + " ");
}
System.out.print("\n");
return;
}
for(int i=start; i < arr.length; i++){
result[pos] = arr[i];
combinationUtil(arr,k,pos+1,result,i+1);
}
}
public static void main(String args[]){
CombinationOfSizeK kk = new CombinationOfSizeK();
int arr[] = {1,2,3,4};
kk.combination(arr, 2);
}
}