[프로그래머스] DFS/BFS - 네트워크 (Python)
[프로그래머스] DFS/BFS - 네트워크
풀이 - DFS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
def dfs(n, computers, visited, x):
visited[x] = 1
for i in range(n):
if computers[x][i] == 1 and visited[i] == 0:
dfs(n, computers, visited, i)
def solution(n, computers):
answer = 0
visited = [0] * n
for i in range(n):
if visited[i] == 0:
dfs(n, computers, visited, i)
answer += 1
return answer
n
: 컴퓨터 개수computers
: 연결에 대한 정보가 담긴 2차원 배열visited
: 방문 검사를 위한 배열x
: x번 컴퓨터(현재 방문하고 있는 컴퓨터)