BFS 너비 우선 탐색

2021. 1. 9. 17:43Algorithm

인접한 이웃 노드를 모두 방문한 다음에 이웃의 이웃 노드들을 방문한다.

Point: Queue 사용

Pseudocode

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
void search(Node root) {
 
    Queue queue = new Queue();
 
    root.marked = true;
    
    queue.enqueue(root);
 
    while(!queue.isEmpty()) {
 
        Node r = queue.dequeue();
 
        visit(r);
 
        foreach(Node n in r.adjacent) {
            
            if(n.marked == false) {
 
                n.marked = true;
 
                queue.enqueue(n);
         
            }        
        }
    }    
}
cs

 

'Algorithm' 카테고리의 다른 글

DFS 깊이 우선 탐색  (0) 2021.01.09