研究Breadth-first search算法,我遇到了以下伪代码:
1 Breadth-First-Search(G, v):
2
3 for each node n in G:
4 n.distance = INFINITY
5 n.parent = NIL
6
7 create empty queue Q
8
9 v.distance = 0
10 Q.enqueue(v)
11
12 while Q is not empty:
13
14 u = Q.dequeue()
15
16 for each node n that is adjacent to u:
17 if n.distance == INFINITY:
18 n.distance = u.distance + 1
19 n.parent = u
20 Q.enqueue(n)
我的问题是关于第19行(n.parent = u):
如果&#34; n 与<&strong>相邻,那么父怎么可能是你?
答案 0 :(得分:1)
根据定义,父母与其子女相邻,他们不会是没有联系的孩子。但那并不是这个问题。父指针是完全独立于图形结构的东西,它是你构建的新东西,可以跟踪节点首次到达的位置。