这是UESTC通信网理论基础课程project1—基于BFS算法求任意两点之间的所有路径。本程序使用的Python语言,由于
project提交比较匆忙,代码注释较少。
- 图的存储:采用邻接表的方式,即使用一个字典,每个节点有一个集合记录其相邻节点。
graph={ 'a':set(['b','d']), #a 'b':set(['a','c','e']), #b 'c':set(['b','d','e']), #c 'd':set(['a','c','e']), #d 'e':set(['b','c','d']), #e }
- 路径寻找部分:
#定义某个节点BFS已经访问过的节点的类 class Used: def _init_(self,used,node): self.used=used self.node=node #路径寻找 def path_search(graph,start,end,visited,path): if visited is None: visited=set() END