[DFS/BFS] 네트워크

조은지·2021년 9월 2일
0

프로그래머스

목록 보기
2/4

링크 - 네트워크

코드

def dfs(start,computers,visited,n):
        visited[start]=True
        for i in range(n):
            if computers[start][i] ==1 and start!=i:
                if not visited[i]:
                    dfs(i,computers,visited, n)
                    
def solution(n, computers):
    answer = 0
    visited = [False]*n
    
    for i in range(n):
        if not visited[i]:
            dfs(i, computers,visited,n)
            answer+=1
            
    return answer

앞서 풀었던 연결요소의 개수 문제와 똑같은 풀이이다.

이 때 다른 점은 input이 인접행렬의 형태로 주어졌기 때문에, computers[start][i]의 값이 1인지 (서로 연결이 되어있는지)를 확인해주었다.

0개의 댓글

관련 채용 정보