728x90
dfs
def dfs(graph, v, visited):
visited[v]=True
print(v, end=' ')
for i in graph[v]:
if not visited[i]:
dfs(graph,i,visited)
graph=[
[], #์ธ๋ฑ์ค 0์ ๋น์๋
[2,3,8], #์ฒซ๋ฒ์งธ ๋
ธ๋์ ์ธ์ ํ ๋
ธ๋ ๋ชฉ๋ก
[1,7],
[1,4,5],
[3,5],
[3,4],
[7],
[2,6,8],
[1,7]
]
visited = [False]*9
dfs(graph,1,visited)
bfs
from collections import deque
def bfs(graph, v, visited):
q=deque([v]) #ํ ์์ฑ
visited[v]=True #๋ฐฉ๋ฌธ์ฒ๋ฆฌ
while q: #ํ๊ฐ ๋น์ด์์ง ์์๋์
w = q.popleft() #ํ์ front๋ฅผ w์ ์ ์ฅํ๊ณ pop
print(w,end=' ')
for i in graph[w]:
if not visited[i]:
q.append(i)
visited[i]=True
graph=[
[], #์ธ๋ฑ์ค 0์ ๋น์๋ (์์ธ๊ฑฐ๋๊น)
[2,3,8],
[1,7],
[1,4,5],
[3,5],
[3,4],
[7],
[2,6,8],
[1,7]
]
visited = [False]*9
bfs(graph,1,visited)
728x90
'์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด > DFS,BFS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค]4963๋ฒ: ์ฌ์ ๊ฐ์ (0) | 2023.02.23 |
---|---|
[์ด์ฝํ ]๋ฏธ๋ก ํ์ถ / [๋ฐฑ์ค]2178๋ฒ: ๋ฏธ๋ก ํ์ (0) | 2023.02.23 |
[์ด์ฝํ ] ์๋ฃ์ ์ผ๋ ค ๋จน๊ธฐ (1) | 2023.02.23 |
[๋ฐฑ์ค]2644๋ฒ: ์ด์๊ณ์ฐ (0) | 2023.02.18 |
[๋ฐฑ์ค]2667๋ฒ: ๋จ์ง๋ฒํธ๋ถ์ด๊ธฐ (0) | 2023.02.15 |