memostack
article thumbnail
Java 스택(Stack)을 이용해서 순열 구하기
Algorithm 2020. 2. 24. 21:43

순열 [1, 2, 3]의 순열은 [1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1] 이다. 이처럼 같은 원소가 중복되지 않고, 조합하여 나올 수 있는 모든 경우의 집합을 뜻한다. 재귀와 스택을 이용해서 순열을 생성하는 코드를 작성한다. 코드 아래 2가지 자료구조를 사용한다. Stack stack: 원소를 담을 스택 boolean[] chosen: 이미 포함한 원소를 구분하기 위한 불리안 배열 private static void search(Stack stack) { if (stack.size() >= n) { System.out.println(stack.toString()); } else { for(int i=1; i= n) { System..