[Java] 조합 구하는 코드

이준영·2024년 9월 5일
0

🟥 Algorithm

목록 보기
5/5

조합 구하기

{1, 2, 3, 4} 에서 k개의 숫자 조합을 구하기


static void combination(int[] arr, List<Integer> comb, int start, int n, int k) {

    if (k == 0) {
    	System.out.println(comb);
        return;
    }

	for (int i = start; i < n; i++) {
    	comb.add(arr[i]);
        combination(arr, comb, i + 1, n, r - 1);
        comb.remove(comb.size() - 1);
    }
}

 public static void main(String[] args) throws IOException {
 	int[] arr = {1, 2, 3, 4};

	for (int i = 1; i <= arr.length; i++) {
    	System.out.println(i + "개 조합 구하기");
        combination(arr, new ArrayList<>(), 0, arr.length, i);
        System.out.println();
    }
}

출력

1개 조합 구하기
[1]
[2]
[3]
[4]

2개 조합 구하기
[1, 2]
[1, 3]
[1, 4]
[2, 3]
[2, 4]
[3, 4]

3개 조합 구하기
[1, 2, 3]
[1, 2, 4]
[1, 3, 4]
[2, 3, 4]

4개 조합 구하기
[1, 2, 3, 4]
profile
작은 걸음이라도 꾸준히

0개의 댓글