-
library "itertools" 유용한 함수 모음파이썬 알고리즘 2021. 2. 18. 20:31
1. 무한 이터레이터
count(start, [step])
예) count(10,2) -> 10 12 14 16 , .... (무한)
cycle( t )
예) cycle("ABCD") -> A B C D A B C D .... (무한)
repeat( elem, [n] )
elem을 n회 반복
예) repeat(10,3) -> 10 10 10
2. 가장 짧은 입력 시퀀스에서 종료되는 이터레이터
accumulate( it , [func] )
앞에서부터 func 한 결과를 넣어준다
예) accumulate([1,2,3],operations.add) -> 1 3 6
chain( it1, it2)
내용물을 이어서 붙여준다
예) chain('abc', 'def') -> a b c d e f
chain.from_iterable( it )
iterable 안에 iterable
예) chain.from_iterable(['abc','def']) -> a b c d e f
3. 조합형 이터레이터
product( p , q , .. , [repeat = 1])
데카르트 곱(cartesian product)
예) product( 'ABCD', 'ABCD') -> AA AB AC AD BA BB BC BD CA CB CC CD DA DB DC DD
permutations(p, n)
순열
예) permutations([1,2,3],2) -> (1,2) (1,3) (2,1) (2,3) (3,1) (3,2)
combinations(p ,n)
조합
예) combinations([1,2,3],2) -> (1,2) (1,3) (2,3)
combinations_with_replacement(p,n)
반복되는 요소 있는 조합
예) combinations_with_replacement([1,2,3],2) -> (1,1) (1,2) (1,3) (2,2) (2,3) (3,3)
'파이썬 알고리즘' 카테고리의 다른 글
백준 2460 (0) 2022.01.22 백준 3460 (0) 2022.01.22 백준 10818 (0) 2022.01.22 DFS, BFS 알고리즘 (0) 2021.12.16 Union Find 알고리즘 (0) 2021.02.18