주어진 문자열의 모든 순열을 만드는 법.


주어진 문자열의 모든 순열을 만드는 가장 좋은 코드가 뭔가요? 예를 들어서 ba가 있으면 ba와 ab가 되는데 abcdefgh의 경우에서 나올 수 있는 모든 순열을 출력하는 프로그램을 어떻게 만들수 있을까요?

  • 2016년 01월 26일에 작성됨

조회수 829


1 답변


좋아요
0
싫어요
채택취소하기
public static void permutation(String str) { 
    permutation("", str); 
}

private static void permutation(String prefix, String str) {
    int n = str.length();
    if (n == 0) System.out.println(prefix);
    else {
        for (int i = 0; i < n; i++)
            permutation(prefix + str.charAt(i), str.substring(0, i) + str.substring(i+1, n));
    }
}

이렇게 해봤습니다.

  • 2016년 01월 26일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close