자격증/PCCP

[BFS] 레벨탐색(BFS 익히기)

멍멍코 2024. 2. 27. 00:53

Level 순으로 탐색: Level 0 다 탐색했으면 → Level 1 탐색 → Level 2 탐색 → Level 3 탐색

BFS: 출발상태에서 도착상태까지 최소 횟수 구하는 문제

Level 0

1

Level 1

2 3

Level 2

4 5 6 7

from collections import deque:
def BFS():
	dQ=deque()
	dQ.append(1)
	L = 0
	while(dQ): #dQ가 비어있으면 멈춤
		length=len(dQ)
		for _ in range(length):
		v=dQ.popleft()
		print(v, end='')
		for nv in [v*2, v*2+1]:
			if nv > 7:
				continue
			dQ.append(nv)
		L += 1

	BFS()