그래프탐색 BFS | 프로그래머스 고득점kit 네트워크 | Python

Table of Contents


프로그래머스 고득점kit 네트워크 | Python

📌 프로그래머스 고득점kit 네트워크 문제 바로가기

📌 입출력 예 설명
그림 오른쪽을 누르면 2번째 예시도 볼 수 있다!


🔎 문제 설명

💚 Level 3

- 난이도 ★☆☆☆
- 그래프탐색 BFS

생각보다 간단하고 금방 풀렸던 문제.
문제를 꼬아놓지 않아서 그래프탐색 문제 유형만 숙지하고 있다면 누구나 바로 풀 수 있다.

방문여부를 기록하면서 그래프 탐색을 수행하고, 방문하지 않은 노드를 만날 때마다 그래프 탐색을 돌려주는 방식으로 진행하였다. 더 자세한 코드는 아래에 남겨놓았다.



💻 내 코드

from collections import deque
def solution(n, computers):
    answer = 0
    visited = [0 for _ in range(n)]
    
    def bfs(start):
        queue = deque([start])
        visited[start] = 1
        while queue:
            now = queue.popleft()
            for i in range(n):
                if computers[now][i] and not visited[i]:
                    queue.append(i)
                    visited[i] = 1
    
    for i in range(n):
        if not visited[i]:
            bfs(i)
            answer += 1
    
    return answer




 


💙 You need to log in to GitHub to write comments. 💙
If you can't see comments, please refresh page(F5).