五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

數(shù)據(jù)結(jié)構(gòu)拓展習(xí)題:鄰接表的深度優(yōu)先非遞歸遍歷

2022-05-28 00:12 作者:回到唐朝當少爺  | 我要投稿

題目:一個連通圖采用鄰接表作為存儲結(jié)構(gòu),設(shè)計一個算法,實現(xiàn)從頂點v出發(fā)的深度優(yōu)先遍歷的非遞歸過程。

bool visited[MAX_VERTEX_NUM];

void DFS(ALGraph G, int v)

{

?????? Sqstack S;

?????? InitStack(S);

?????? visited[v] = true;

?????? Push(S, v);

?????? printf("%d ", G.vertices[v].data);

?????? ArcNode* p;

?????? while (!StackEmpty(S))

?????? {

????????????? p = G.vertices[GetTop(S)].firstarc;//p指向棧頂元素的第一個鄰接點

????????????? while (p)

????????????? {

???????????????????? if (visited[p->adjvex] == false)//如果p指向的結(jié)點沒有被訪問

???????????????????? {

??????????????????????????? visited[p->adjvex] = true;//訪問該結(jié)點

??????????????????????????? printf("%d ", G.vertices[p->adjvex].data);

??????????????????????????? Push(S, p->adjvex);//將該結(jié)點入棧

??????????????????????????? p = G.vertices[p->adjvex].firstarc;//p指向該結(jié)點的第一個鄰接點

???????????????????? }

else//如果p指向的結(jié)點被訪問過,

??????????????????????????? p = p->nextarc; //則訪問該結(jié)點沒有被訪問過的鄰接點

????????????? }

????????????? if (p == NULL)

???????????????????? Pop(S);

?????? }

}

void DFS_Traverse(ALGraph G)

{

?????? for (int v = 0; v < G.vexnum; v++)

????????????? visited[v] = FALSE;

?????? for (int v = 0; v < G.vexnum; v++)

?????? {

????????????? if (!visited[v])

?????? ????????????? DFS(G, v);

?????? }

}


數(shù)據(jù)結(jié)構(gòu)拓展習(xí)題:鄰接表的深度優(yōu)先非遞歸遍歷的評論 (共 條)

分享到微博請遵守國家法律
吉木萨尔县| 宝应县| 邵武市| 张家川| 鸡西市| 灵山县| 永和县| 台湾省| 新昌县| 泗阳县| 长兴县| 句容市| 广南县| 六盘水市| 绥江县| 惠水县| 余庆县| 梧州市| 佳木斯市| 榆树市| 抚顺县| 昌江| 佛坪县| 什邡市| 微山县| 夏津县| 井研县| 永泰县| 黔西| 古丈县| 黄冈市| 湖南省| 石柱| 平舆县| 南安市| 尼勒克县| 方城县| 柘荣县| 温泉县| 江都市| 常熟市|