-3
나는BFS 알고리즘이 대기열을 사용하는 이유는 무엇입니까?
위키 백과
Breadth-First-Search(Graph, root):
2
3 for each node n in Graph:
4 n.distance = INFINITY
5 n.parent = NIL
6
7 create empty queue Q
8
9 root.distance = 0
10 Q.enqueue(root)
11
12 while Q is not empty:
13
14 current = Q.dequeue()
15
16 for each node n that is adjacent to current:
17 if n.distance == INFINITY:
18 n.distance = current.distance + 1
19 n.parent = current
20 Q.enqueue(n)
https://en.wikipedia.org/wiki/Breadth-first_search에 의사 코드를보고 내가 무엇에 대해 궁금하면 queueu이 노드를 보유하는 데 사용되는 이유는 특별한 이유가 있는지 여부입니다 있어요. 컨테이너에 현재있는 요소를 통과하는 순서가 관련이 없기 때문에 컨테이너를 사용할 수 있습니다.
힌트 : BFS 인 경우 순서가 중요하지 않습니다. 그것을 스택으로 대체하고 어떤 일이 일어나는 지 짐작하십시오. – Carcigenicate
또 다른 힌트 : 대기열 또는 스택을 사용하면 어떻게되는지 생각해보십시오. – Mai