전체 글 (31) 썸네일형 리스트형 자료구조 Set and Map (Hash 기반 vs Tree 기반) (NeetCode 21번 알고리즘 : BST Sets and Maps ) 자료구조 Set 자료구조에서의 set는 단순히 , 고유한 요소들의 모음을 나타내는 class이다.Tree 기반 set와 해시 기반 Set가 존재한다. 특징1. 중복된 요소가 없음.2. 순서가 없음.3. 변경 가능 (추가, 제거 가능) 해시 기반 Set대부분 set는 해시 테이블 기반으로 만들어지며, insert, add 등이 O(1)의 시간 복잡도를 가진다. Initializethisset = set()# thisset = {}를 하면 dict로 인식하기 때문에 초기화는 set()로 해준다. thisset = {1,2,3}# set 초기화 Add and Removethisset.add(4)thisset.remove(3) Set Operations# 합집합union_set = set1 | set2pri.. 7/9 코테 일지 (BFS 응용) 1. BFS 응용 11725 트리의 부모 찾기 처음에는 트리의 특성을 사용하지 않고 단순히 논리적으로 queue를 사용하여 풀었다. import sys from collections import dequen = int(sys.stdin.readline().rstrip())ans = [0 for _ in range(n)]ans[0] = 1 queue = deque()for _ in range(n-1): input = list(map(int,sys.stdin.readline().rstrip().split(' '))) queue.append(input)while queue: input = queue.popleft() if ans[input[0]-1] != 0 : ans[input[1]-1] = i.. NeetCode 20번 알고리즘 : Breadth-First Search Algorithm Codedef bfs(root): queue = deque() if root: queue.append(root) level = 0 while len(queue) > 0: print("level: ", level) for i in range(len(queue)): curr = queue.popleft() print(curr.val) if curr.left: queue.append(curr.left) if curr.right: queue.append(curr.right) level .. 이전 1 2 3 4 5 ··· 11 다음