1
在圖中的節點之間的距離,我寫了下面的代碼:使用BFS
void bfs(graph *g, int start)
{
int i;
int visited[MAXVERTS], next;
for (i = 0; i < g -> nodes; i++)
visited[i] = 0;
visited[start] = 1;
printf("%d", start);
queuePtr q;
q = QueueCreate();
QueueEnter(q,start);
while(!QueueIsEmpty(q))
{
next=QueueDelete(q);
node *p=g->adjList[next];
while(p)
{
if(!visited[p->index])
visited[p->index] = 1;
QueueEnter(q,p->index);
}
p=p->link;
}
}
什麼我需要添加,使其計算在圖中,兩個節點之間的距離? 我一直在嘗試,我無法得到它的工作。
您是否在尋找2個節點之間的最短路徑? – benjarobin
是的,最短的。 –