순열, 조합
1. 순열 Permutations - 완전탐색 (모든 경우의 수를 고려해볼 때, 순열을 활용한다) from itertools import permutations arr = ['A','B','C'] arr_string = 'ABC' nPr = permutations(arr, 2) #인자로 리스트를 넣어도 되고 nPr_str = permutations(arr_string, 2) #인자로 문자열을 넣어도 된다. print(list(nPr)) # [('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')] print(list(nPr_str)) # [('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C',..
2024. 4. 5.
Queue
FIFO(First In First Out) 기반의 자료구조 데이터를 추가한 순서대로 제거할 수 있기 때문에 비동기 메세징(asynchronous messaging), 스트리밍(streaming), 너비 우선 탐색(breath first search) 등에서 널리 응용 1. list를 활용한 Queue -> 데이터 삽입, 삭제 시 O(1), 무작위 접근 시 O(n) >>> queue = [4, 5, 6] >>> queue.append(7) >>> queue.append(8) >>> queue [4, 5, 6, 7, 8] >>> queue.pop(0) 4 >>> queue.pop(0) 5 >>> queue [6, 7, 8] # 방향을 반대로 하려면 >>> queue = [4, 5, 6] >>> queue...
2024. 4. 5.