以上代码用c语言实现
时间: 2023-10-26 16:06:04 浏览: 29
以下是使用 C 语言实现深度优先遍历的代码,同样是通过邻接矩阵实现:
```c
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#define MAXN 100
int n;
int adj_matrix[MAXN][MAXN];
bool visited[MAXN];
int order[MAXN];
int idx = 0;
void dfs(int v)
{
visited[v] = true;
order[idx++] = v;
for (int i = 0; i < n; i++) {
if (adj_matrix[v][i] == 1 && !visited[i]) {
dfs(i);
}
}
}
int main()
{
scanf("%d", &n);
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
scanf("%d", &adj_matrix[i][j]);
}
}
for (int i = 0; i < n; i++) {
visited[i] = false;
}
for (int i = 0; i < n; i++) {
if (!visited[i]) {
dfs(i);
}
}
for (int i = 0; i < n; i++) {
printf("%d ", order[i]);
}
printf("\n");
return 0;
}
```
输入样例:
```
4
0 1 0 1
1 0 1 0
0 1 0 1
1 0 1 0
```
输出样例:
```
0 1 2 3
```
相关推荐
![](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)