[Algorithm] Permutations

Jnary·2022년 5월 3일
0

Algorithm

목록 보기
4/8
post-thumbnail

Permutations는 주어진 집합의 모든 순열을 출력해주는 알고리즘입니다.
이 포스팅에서 소개할 내용은 다음과 같습니다.
1. 코드로 이해하는 Permutations
2. 문제로 이해하는 Permutations

1. 코드로 이해하는 Permutations

#include <iostream>

using namespace std;

void Permutations(char *a, const int H, const int T) {
    if ( H == T) {
        for (int i = 0; i <= T; i++)
            cout << a[i] << " ";
        cout << endl;
    }
    else {
        for (int i = H; i <= T; i++) {
            swap(a[H], a[i]);
            Permutations(a, H+1, T);
            swap(a[H], a[i]);
        }
    }
    
    return;
}

int main() {
    char *arr = new char[5] {'a', 'b', 'd', 'e', 'c'};
    Permutations(arr, 0, 4);
    return 0;
}

2. 문제로 이해하는 Permutations

BOJ_9742(순열)

profile
숭실대학교 컴퓨터학부 21

0개의 댓글