使用邻接矩阵的C语言深度优先遍历算法子函数
时间: 2023-07-24 22:21:20 浏览: 92
深度优先遍历(邻接矩阵)实现
以下是使用邻接矩阵的C语言深度优先遍历算法子函数的示例代码:
```c
#define N 5 // 图中节点数
void DFS(int node, int visited[], int graph[][N])
{
visited[node] = 1; // 标记节点已访问
printf("%d ", node); // 输出节点值
for(int i = 0; i < N; i++)
{
if(graph[node][i] == 1 && visited[i] == 0) // 如果节点与当前节点相邻且未被访问过
{
DFS(i, visited, graph); // 递归访问相邻节点
}
}
}
```
其中,`graph`为一个二维数组,表示邻接矩阵。在函数内部,首先将当前节点标记为已访问,并输出节点值。然后遍历与当前节点相邻的节点,如果该节点未被访问过,则递归访问它,直到所有相邻节点都被访问完毕。
阅读全文