% E6 % B7 % B1 % E3 % 81 % 95 % E5 % 84 % aa % E5 % 85 % 88 % E3 % 83 % a9 % E3 % 83 % 90 % E3 % 83 % BC % E3 % % 95 % E5 % 84 % aa % E5 % 85 % 88 % E3 % 83 % E3 % a9 % E3 % 83 % 90 % E3 % 83 % BC % E3 % 82 % B9 % E3 % 81 % afbfff E7 % a7 % B0 % E3 % 81 % 99 % E3 % 82 % 8b % 0a % E5 % 9b % B3 % E3 % 81 % AE % E4 % BD % E6 % 88 % 90 % ef % BC % 88 % ed c % 89 % ef % BC % 89 % ef % BC % 89 % E3 % 80 % 82 % 0a % E6 % B1 % E3 % 81 % 95 % E5 % 84 % aa % E5 % 85 % 88 % E3 % 83 3 % BC % E3 % 82 % B9 % E5 % B1 % 95 % E7 % a4 % ba % E3 % 81 % a7 % E4 % BD % 9c % 88 % 90 % E3 % 81 % 95 % E3 % 82 % 8c % 81 % a7 % E3 % 81 % 99 % E3 % 80 % 823358 www.Sina.com % 2f % ef % BC % 8ca % E7 % 82 % B9 % E3 % 81 % 8b % E3 % 82 % 89 BC % E3 % 82 % B9 % E3 % 82 % 92 % E8 % a1 % 8c % E3 % 81 % 84 % E3 % 81 % be % E3 % 81 % 83 % 80 % 82 % 0a % E3 % 83 % 993 3 % 83 % 90 % E3 % 83 % BC % E3 % 82 % B9 % E3 % 81 % 99 % E3 % 82 % 8b % 0a2. % 20a % E7 % 82 % B9 % E6 % 9c % 80 % E5 % be 8b % E3 % 82 % 89c % ef % BC % 89 % E3 % 82 % 92 % E8 % a6 % 8b % E3 % 81 % E3 % 81 % E3 % 80 % 81c % E7 % 82 % B9 % % be % 8c % E3 % 81 % ab % E4 % BD % 9c % E6 % 88 % 90 % E3 % 81 % 97 % E3 % 81 % 9f % E8 % be % ba3 % ef % BC % 88c % E3 % 81 % B9 % E3 % 81 % ab % E5 % 88 % B0 % e9 % 81 % 94 % E3 % 81 % 99 % E3 % 82 % ef % BC % 89 % E8 % aa % E5 % 95 % 8f % 81 % 8f % E3 % 81 % aa % E3 % 82 % 8b % ef % BC % 89 % ef % BC % 89 % E3 % 80 % 82 % 0a4. % 20d % E7 % 82 % B9 % E3 % 81 % ab % E5 % 88 % B0 % E7 % 9d % 80 % E3 % 81 % 99 % E3 % 82 % 8b % 0a 5. % 20b % E7 % 82 % B9 % E8 % b5 % B0 % E6 % 8c % E8 % a6 % 8b % E3 % 81 % a4 % E3 % 81 % 8b % E3 % 82 % 89 % E3 % 81 % aa % E3 % 84 % E3 % 80 % 81 % E7 % b5 % 82 % ee 3 % 81 % AE % E7 % b5 % 90 % E6 % 9e % 9c % 3aa-c-d-b % 0a2% ef % BC % 89 % E5 % AE % E8 % a1 % 8c % E4 % be % 8b % E3 % 80 % 81e % E3 % 81 % af % E8 % be % ba % E3 % 81 % AE % E6 % 95 % B0 % 0a % ef % BC % 88 % E4 % b8 % 89 % ef % BC % 89 % BC % 89 % E3 % 82 % B3 % E3 % 83 % 83 % 91 % E3 % 82 % a4 % E3 % 83 % ab % E7 % 92 % B0 % E5 % a2 % 83 % ef % BC % atype % ef % BC % 9b % 20 % 2f % 2a % e9 % A0 % 82 % E7 % 82 % B9 % E6 % 83 % 85 % E5 % A0 % B1 % E3 % 83 % 87 % E3 % BC % a1 % A8 % E3 % 83 % 83 % E3 % BC % E3 % 83 % 89 % 2a % 2f int % 20 adjvex % ef % BC % 9b % 20 % 2f % 2a % e9 % 9a % a3 % % BC % 9b % 20 typedef % 20 struct % 20 vnode % 20 % 7b % 20 % 2f % 2a % E3 % 83 % 83 % E3 % 83 % 83 % 80 % E3 % 83 % 83 % bb a % e9 % A0 % 82 % E7 % 82 % B9 % E6 % 83 % 85 % E5 % A0 % B1 % 2a %2a % 20 first edge % ef % BC % 9b % 20 % 2f % 81 % AE % E5 % 85 % 88 % e9 % A0 % ad % E3 % 81 % ab % e9 % 9a % a3 % E6 % 8e % a5 % E3 % 81 % E3 % 82 % 8b % E3 % 993 % 7b % 20 % 2f % 2a % e9 % 9a % a3 % E6 % 8e % a5 % E8 % a1 % E8 % E3 % 82 % BF % E3 % E4 % 83 % 97 % 2a %2fvexnode E3 % 83 % 89 % E3 % 83 % 8e % E3 % 83 % 83 % 89 % E3 % 81 % AE % e9 % A0 % 86 % E5 % ba % 8f % E8 % a1 % A8 % 2a % 222a % 95 % B0 % E3 % 81 % A8 % E8 % be % ba % E6 % 95 % B0 % 2a % 2f %7dad jgraph % ef % BC % 9b % 20 int % 20 visited % 5bm % 5d % BC % 8cj % ef % BC % 8ck % ef % BC % 9b % 20 edge node % 2a % 20s % ef % BC % 9b % 20 printf % ef % BC % 88 pleaseinputnande 3360 g-n % ef % BC % 8cg-e % ef % BC % 89 % ef % BC % 9b % 20 % 2f % 2a % e9 % A0 % 82 % B9 % E3 % 81 % AE % E6 % 95 har % ef % BC % 88 % ef % BC % 9b % 20 printf % ef % BC % 88 please input % 25d vertex : % ef % BC % 89 % E3 % 80 % 81g-n % er b % 20i % ef % BC % 89 % ef % BC % 88 % 7b printf % ef % BC % 89 % ef % BC % 89 % E3 % 80 % 20 % 201 % ef % BC % 89 % E3 % 81 % 97 % E3 % 81 % a6 % E3 % 81 % 8f % E3 % 81 % A0 % E3 % 81 % 84 % E3 % 80 % 82 % 20 scanf _ s % ef % b % 20 % 2f % 2a % e9 % A0 % 82 % E7 % 82 % B9 % E6 % 83 % 85 % E5 % A0 % B1 % 82 % E8 % aa % ad % E3 % 81 % BF % E8 first edge % 20 % 3d % 20 null % ef % BC % 9b % 20 % 2f % 2a % E8 % be % E3 % 81 % AE % E8 % a1 % A8 % E3 % 82 % 92 % E7 % % 88 please input % d edges : % ef % BC % 88 % ef % BC % 8cg-e % ef % BC % 89 % ef % BC % 9b % 20 for % ef % BC % 88k % 3d0%
adjvex])DFS(G, p->adjvex);p = p->next;}}void DFStraverse(adjGraph G){int i;for (i = 0; i < G.n; i++)visited[i] = 0; /*初始化标志数组*/for (i = 0; i < G.n; i++)if (!visited[i]) /*vi未访问过,!0为真*/DFS(G, i);}int main(){adjGraph G;createAdjGraph(&G); /*创建图的邻接表*/printf("n The Graph is:n");print(G);DFStraverse(G);return 0;} 广度优先遍历 一:遍历展示广度优先遍历是一层一层的往下去遍历,我们可以用一个队列(先进先出)来存储每一层的节点,在遍历每一个节点时,取它下一层的节点,放到队列的末尾,遍历完一层时,下一层的节点也放到了队列中。
创建的图如下:数字代表创建顺序,从b点进行广度优先遍历:
过程:
1.b点入队,(b为队头)
2.队头b出队,b点的边连接点倒序入队,d,c,a(d为队头)
3.队头d出队,d点的边连接点因为都已经入队,不作为(c为队头)
4.队头c出队,c点的边连接点因为都已经入队, 不作为(a为队头)
5.队头a出队,同上不作为(此时队列为空)
6.e点入队(e为队头)
7.队头e出队,无边表节点,结束
遍历结果(出队顺序):b->d->c->a 最后e
n是顶点数,e是边数