1. 首页
  2. 安全技术
  3. 其他
  4. 基于邻接表与邻接矩阵的无向图DFS与BFS遍历实现

基于邻接表与邻接矩阵的无向图DFS与BFS遍历实现

上传者: 2025-06-15 17:11:21上传 ZIP文件 56.28KB 热度 1次

基于邻接表的无向图遍历实现,适合图不太密的时候用,结构清晰,代码也不复杂。DFS 用递归或者栈就行,路径一路走到底,回头再补。BFS 就像一层层扫,队列搞定,响应也快。你可以自己指定起点,输出访问序列和生成树边集,用的还是教科书上经典的图 7.13(a)。

邻接矩阵也支持,适合边多的图,判断有没有边挺方便的。DFS 和 BFS 在它上面跑,复杂度都还是O(n+m),跑起来也不算慢。用CreateGraph创建图结构,跑 DFS、BFS 两个函数直接出结果。

每个节点用VNode表示,边用ArcNode链起来,图结构是ALGraph。跑一遍 DFS,能看到怎么深入回溯;BFS 走一遍,就知道图怎么一层层展开。

如果你平时爱研究图结构的遍历算法,这套代码你可以直接用。测试图用教科书图,也方便你对照调试。想改成自己的图也简单,改下输入就行。

下面这些资源还挺有的,懒得自己写代码的话可以直接拿来用:

如果你刚好在复习图算法,又不想手敲邻接表结构,那你可以直接参考上面的链接,改改就能跑。

下载地址
用户评论