순열, 조합자료구조+알고리즘2022. 3. 18. 08:20
Table of Contents
itertools
- 파이썬에서 itertools 라이브러리를 이용하여 매우 간편하게 순열, 조합, 중복순열, 중복조합을 구할 수 있다!
순열
- 중복을 허용하지 않고 r개를 뽑힌 순서대로 나열한다.
- 만약 (1, 2) (2, 1) 이 있다면 다른 경우의 수로 취급!
- 튜플로 반환
from itertools import permutations
for i in permutations([1, 2, 2, 3], 2):
print(i, end=" ")
// (1, 2) (1, 2) (1, 3) (2, 1) (2, 2) (2, 3) (2, 1) (2, 2) (2, 3) (3, 1) (3, 2) (3, 2)
조합
- 중복을 허용하지 않고 r개를 뽑기만 한다
- 만약 (1, 2) (2, 1)이 있다면 같은 경우의 수로 취급한다!
from itertools import combinations
for i in combinations([1, 2, 2, 3], 2):
print(i, end=" ")
// (1, 2) (1, 2) (1, 3) (2, 2) (2, 3) (2, 3)
중복 조합은 아래 블로그 참고!
'자료구조+알고리즘' 카테고리의 다른 글
deque로 BFS, DFS 구현 (0) | 2022.03.28 |
---|---|
heap (heapq 모듈) (0) | 2022.03.22 |
정규 표현식, re 모듈 (0) | 2021.06.19 |
프로그래머스-소수구하기 (itertools) (0) | 2021.06.18 |
백준-1012 유기농 배추 (BFS) (0) | 2021.06.09 |
@덕구공 :: Duck9s'
주니어 개발자에욤
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!