순열 Permutation 알고리즘
{a, b, c, d} 로 순열을 만드는 것은 4! = 24개 {a, b, c, d}의 모든 순열 = 첫 원소가 a이면서 {b, c, d}의 모든 순열 + 첫 원소가 b이면서 {a, c, d}의 모든 순열 + 첫 원소가 c이면서 {a, b, d}의 모든 순열 + 첫 원소가 d이면서 {a, b, c}의 모든 순열 위의 식을 보면 함수를 recursive 하게 짤수 있다는 것을 알수 있습니다. 첫 원소가 a이면서 {b, c, d}의 모든 순열 = 앞에 고정된 원소 a, b 이면서 {c, d}의 모든 순열 + 앞에 고정된 원소 a, c 이면서 {b, d}의 모든 순열 + 앞에 고정된 원소 a, d 이면서 {b, c}의 모든 순열 여기서 앞에 고정된 원소 들을 prefix string 전체 원소를 set S라고..
더보기