图适合描述更复杂的多对多数据结构,如群体社交关系、城市交通路线……
本文将讨论以邻接矩阵方式存储图,并在此基础之上对图进行深度、广度搜索。
2....如上的图结构可以描述如下:
# 5 个顶点
V={A0,B1,C2,D3,E4}
# 7 条边
E={ (A0,B1,3),(B1,C2,4),(C2,D3,6),(C2,E4,1),(D3,E4,2)...图的存储
----
图的存储实现主流有 2 种:邻接矩阵和链接表,本文主要介绍邻接矩阵。
3.1 邻接矩阵实现思路
----
使用一维数组存储顶点的信息。
使用二维矩阵(数组)存储顶点之间的关系。...邻接矩阵适合表示关系复杂的图结构,如互联网上网页之间的链接、社交圈中人与人之间的社会关系……
3.2 编码实现邻接矩阵
----
3.2.1 基本函数
----
因顶点本身有数据含义,需要先定义顶点类型...编码实现广度优先搜索:
广度优先搜索需要借助队列临时存储选节点,本文使用STL中的队列,在文件头要添加下面的包含头文件:
#include
#include
在图类中实现提供广度优先搜索算法的函数