数据结构邻接表有向网..docVIP

  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文档。上传文档
查看更多
数据结构邻接表有向网.

#include D:\Program Files\Visual C++.6.0\MSDev98\MyProjects\Graph\LinkList.h //==================================================================================================================================== // // 邻接表有向网 部分 // //==================================================================================================================================== struct VexWeight { int vex; int weight; VexWeight(){vex=0; weight=0;} VexWeight(int v){vex=v; weight=0;} VexWeight(int v, int w){vex=v; weight=w;} void operator = (VexWeight n){vex=n.vex; weight=n.weight;} operator int(){ return vex;} }; struct ListNetNode //定义网的顶点结点 每个结点包含结点vex 和一个用于存储边的链表lis { char vex; //顶点元素 LinkListVexWeight lis; //设置网的边链表 ListNetNode(){}; //结点的无参构造函数 ListNetNode(char v) { vex=v;} //给定顶点时构造结点 void operator = (ListNetNode n) {vex=n.vex; lis=n.lis;} //实现结点的赋值 bool operator (ListNetNode n) { return vexn.vex; } //实现结点的比较 bool operator == (ListNetNode n){ return vex == n.vex; } //实现结点的比较 }; class AdjListDirNet //定义邻接表有向网 { public: int vexNum, edgeNum; //定义vexNum存储网的顶点数、和有向边数edgeNum LinkListListNetNode vList; //定义以网的顶点结点构成的表 AdjListDirNet(){vexNum=0; edgeNum=0;} //网的构造函数 无参数时默认构造0个顶点的网 ~AdjListDirNet(){clear();} //析构函数 void insetVertex(char v); //向网中插入一个顶点v void delVertex(char v); //在网中删除顶点v void setEdge(int v1, int v2); //插入从顶点v1到顶点v2的边 v1、v2为顶点对应的位置 void delEdge(int v1, int v2); //删除从顶点v1到顶点v2的边 v1、v2为顶点对应的位置 int getSite(char v); //获取顶点v在顶点表中的位置 void setEdge(char v1, char v2){ setEdge(getSite(v1), getSite(v2)); }//插入从顶点v1到顶点v2的边 v1、v2为顶点 void delEdge(char v1, char v2){ delEdge(getSite(v1), getSite(v2)); }//删除从顶点v1到顶点v2的边 v1、v2为顶点 void setEdge(char v1, VexWeight v2); void showVertex(); //输出网的顶点及其对应的位置 void showEdge(); //输出以每个顶点为起点的边

文档评论(0)

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

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

1亿VIP精品文档

相关文档