알고리즘과 자료구조
itertools (순열과 조합)
Mecodata
2022. 10. 31. 19:37
itertools
- 파이썬에서 반복되는 데이터를 처리하는 기능을 포함하고 있는 라이브러리
- 코테에서 유용한 메소드는 순열 함수인 permutations과 조합 함수인 combinations
- import itertools
- 시간복잡도 = O(N!)
주요 메서드
- 주요 메서드 모두 리스트를 이용하며 결과값도 리스트로 반환함
- permutations(리스트, 숫자) = 해당 리스트에서 지정한 숫자만큼 데이터를 뽑아(중복 X) 일렬로 나열하는 모든 경우를 반환 (순열)
- combinations(리스트, 숫자) = 해당 리스트에서 지정한 숫자만큼 데이터를 뽑아(중복 X) 순서를 고려하지 않고 나열하는 모든 경우를 반환 (조합)
- product(리스트, 숫자) = 데이터의 중복이 허용되는 permutations
- combinations_with_replacement(리스트, 숫자) = 데이터의 중복이 허용되는 combination