建立任意无向图,采用邻接矩阵存储,完成以下操作: (1)对该图进行深度优先遍历,并输出遍历结果; (2)对该图进行广度优先遍历,并输出遍历结果。其中结点数为6,用c++语言表示
时间: 2024-05-23 15:09:23 浏览: 44
我可以帮您回答这个问题。以下是您所需的代码:
#include<stdio.h>
#include<stdlib.h>
#define MAXSIZE 100
#define MAXNODES 6
typedef struct {
int a[MAXSIZE][MAXSIZE];
int n;
} Graph;
int visited[MAXNODES];
// 深度优先遍历
void DFS(Graph *g, int v) {
int i;
visited[v] = 1;
printf("%d ", v+1);
for (i = 0; i < g->n; i++) {
if (g->a[v][i] && !visited[i]) {
DFS(g, i);
}
}
}
// 广度优先遍历
void BFS(Graph *g, int v) {
int queue[MAXSIZE], front = 0, rear = 0;
int i, w;
visited[v] = 1;
printf("%d ", v+1);
queue[rear++] = v;
while (front < rear) {
w = queue[front++];
for (i = 0; i < g->n; i++) {
if (g->a[w][i] && !visited[i]) {
visited[i] = 1;
printf("%d ", i+1);
queue[rear++] = i;
}
}
}
}
int main() {
Graph g = {{{0, 1, 1, 0, 0, 0},
{1, 0, 0, 1, 0, 0},
{1, 0, 0, 1, 1, 0},
{0, 1, 1, 0, 1, 1},
{0, 0, 1, 1, 0, 1},
{0, 0, 0, 1, 1, 0}}, MAXNODES};
int i;
// 深度优先遍历
printf("DFS Order:\n");
for (i = 0; i < g.n; i++) {
visited[i] = 0;
}
DFS(&g, 0);
// 广度优先遍历
printf("\nBFS Order:\n");
for (i = 0; i < g.n; i++) {
visited[i] = 0;
}
BFS(&g, 0);
printf("\n");
return 0;
}
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)