반응형
1. 순열
파이썬에서 순열을 사용하려면 permutations 라이브러리를 사용해야한다.
만약 위와 같이 'A', 'B', 'C'를 원소로 가진 리스트가 있을때
list(permutations(data,2)) 를 사용한다면 data의 원소들 중 서로다른 2개를 선택해 나열하는
모든 경우의 수를 리턴하게 된다. (즉 순열에서 3P2와 같은 의미)
따라서
다음과 같은 결과값을 얻을 수 있다.
1-1. 중복 순열
중복 순열에서는 위의 permutations 대신 product를 사용한다.
2. 조합
파이썬에서 조합을 사용하려면 combinations 라이브러리를 사용해야한다.
이번에도 위의 순열 부분과 동일하게 똑같은 원소의 list를 가지고 있을때
list(combinations(data,2)) 를 사용하게 된다면 순서와 상관 없이 서로 다른 2개를 선택해 나열하게 된다.
즉 조합에서 3C2와 같은 의미를 갖는다.
따라서 다음과 같은 결과값을 얻을 수 있다.
2-1. 중복 조합
중복 조합에서는 위의 combinations 대신 combinations_with_replacement를 사용한다.
반응형
'백준 알고리즘 > Python' 카테고리의 다른 글
[알고리즘] DFS & BFS 알고리즘(1) - 스택 자료구조와 큐 자료구조 (0) | 2022.12.24 |
---|---|
[알고리즘] 그리디 알고리즘 - 백준 1931 파이썬 문제풀이: 회의실 배정 (0) | 2022.12.24 |
[알고리즘] 그리디 알고리즘 - 백준 11047 파이썬 문제풀이: 동전 0 (0) | 2022.12.23 |
[알고리즘] 그리디 알고리즘 (0) | 2022.12.21 |
파이썬 sorted 내장 함수 (0) | 2022.11.22 |