第07章图c.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第07章图c

7.1图及其抽象数据类型 7.1.1 图的基本概念图的定义和术语G=(V, E) V={vi| vi ∈某个数据元素集合}E={(vi ,vj)|vi ,vi∈V} 或E = {〈vi ,vi〉|vi ,vi,∈V且Path}无向图② 有向图 《数据结构(C++版)(第3版)》 多重图,简单图 图7.2 多重图和带自身环的图 《数据结构(C++版)(第3版)》 完全图带权图 邻接顶点 《数据结构(C++版)(第3版)》 2.顶点的度 deg(A)=indeg(A)+outdeg(A)子图《数据结构(C++版)(第3版)》 4.路径 5.连通性《数据结构(C++版)(第3版)》 习题7-4 n(=4)个顶点具有最少边数的无向连通图和有向强连通图是怎样的?//习题解答7-2《数据结构(C++版)(第3版)》 7.1.2 图抽象数据类型ADT GraphT //图抽象数据类型{ int vrtexCount() //返回顶点数 T getVertex(int i) //返回顶点的数据元素 void setVertex(int i, T x) //设置第i个顶点元素为x int weight(int i, int j) //返回边的权值 int next(int i, int j) //返回下一个邻接顶点序号 int insertVertex(T x) //插入元素值为x的顶点 void insertEdge(int i, int j, int weight) //插入边 void removeVertex(int i) //删除顶点及其关联的边 void removeEdge(int i, int j) //删除边 void DFSTraverse(int i) //图的深度优先搜索遍历 void BFSTraverse(int i) //图的广度优先搜索遍历}《数据结构(C++版)(第3版)》 7.2图的表示和实现7.2.1图的邻接矩阵表示和实现7.2.2图的邻接表表示和实现7.2.3 图的邻接多重表表示 《数据结构(C++版)(第3版)》 7.2.1图的邻接矩阵表示和实现邻接矩阵 不带权图的邻接矩阵 图7.9 无向图G1及其邻接矩阵表示《数据结构(C++版)(第3版)》 图7.10 有向图G2及其邻接矩阵表示 图7.10 有向图G2及其邻接矩阵表示 《数据结构(C++版)(第3版)》 (2)带权图的邻接矩阵 图7.11 带权无向图G3的邻接矩阵表示 《数据结构(C++版)(第3版)》 图7.12 带权有向图G4的邻接矩阵表示 《数据结构(C++版)(第3版)》 习题7-15 写出带权无向图G7的邻接矩阵表示《数据结构(C++版)(第3版)》 2.邻接矩阵表示的带权图类template class Tclass MatrixGraph : public AbstractGraphT//继承抽象图类{ private: int n; //顶点数 SeqListT verlist; //顺序表,图的顶点集合,长度为n Matrix mat; //矩阵,存储图的邻接矩阵 public: MatrixGraph(); //构造空图,顶点数为0 MatrixGraph(T vertices[], int vertexCount, Triple edges[], int edgeCount); int vertexCount(); //返回顶点数 T getVertex(int i); //返回第i个顶点元素 void setVertex(int i, T x); //设置第i个顶点元素为x《数据结构(C++版)(第3版)》 MatrixGraphT 邻接矩阵表示的带权图类 int weight(int i, int j); //返回边的权值 int next(int i, int j=-1); //返回在后的下一个邻接顶点序号 friend ostream operator(ostream out, MatrixGraphT ); //输出图 int insertVertex(T x); //插入顶点x,返回顶点序号 void insertEdge(int i, int j, int weight); //插入一条边

文档评论(0)

peili2018 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档