- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
图邻接矩阵相关算法C++实现
.cpp部分
#includeiostream
#includematrix.h
using namespace std;
int main(){
int item;
cout输入矩阵大小: ;
cinitem;
graphmatrixint gmatrix(item);
cout1:获取指定边权值endl;
cout2:获取指定点的第一个邻接顶点endl;
cout3:获取指定点相对于另一点的下一个临接点endl;
cout4:深度优先遍历:endl;
cout5:输出邻接矩阵:endl;
cout6:插入一个顶点:endl;
cout7:删除一个顶点:endl;
cout8:插入一条边:endl;
cout9:删除一条边:endl;
int ch;
cinch;
while(ch!=0){
switch(ch){
case 1: {int v1,v2;
cout输入v1 ,v2:endl;
cinv1v2;
cout权: gmatrix.getweight(v1,v2)endl;
break;}
case 2:{int v;
cout输入指定点:endl;
cinv;
coutfirst 顶 点 : gmatrix.getfirstneighbor(v)endl;
break;}
case 3:{int v1,v2;
cout输入v1,v2: endl;
cinv1v2;
coutv1 相对于v2的第一个邻接点:gmatrix.getnextneighbor(v1,v2)endl;
break;}
case 4:{gmatrix.DepthFS();
coutendl;
break;}
case 5:{gmatrix.print();
break;}
case 6: {int v;
cout输入欲插入顶点编号: ;
cinv;
gmatrix.insertv(v);
gmatrix.print();
break;}
case 7:{int v;
cout输入欲删除节点编号: ;
cinv;
gmatrix.delv(v);
gmatrix.print();
break;
}
case 8:{int v1,v2,w;
cout输入v1,v2及其weight:endl;
cinv1v2w;
gmatrix.inserte(v1,v2,w);
break;}
case 9: {int v3,v4;
cout输入v1,v2:endl;
cinv3v4;
gmatrix.dele(v3,v4);
break;}
}
cout需要更多帮助吗?endl;
cinch;
}
if(ch==0)cout**谢谢使用**endl;
return 0;
}
.h部分
#includeiostream
using namespace std;
templateclass T
class graphmatrix{
private:
int matrixmaxsize;
int matrixsize;
int maxweight;
int edge[256][256];
public:
graphmatrix(int n);
~graphmatrix(){cout**set memory free, program ends**endl;}
int getweight(int v1,int v2);
int getfirstneighbor(int v);
int getnextneighbor(int v1,int v2);
void RDFS(int v,int * visited);
void print();
void DepthFS();
int gmatrixempty(){return (matrixsize?1:-1);}
int gmatrixfull(){return ((matrixsizematrixmaxsize)?1;-1);}
int getnumofV(){return matrixsize;}
您可能关注的文档
最近下载
- 涉密运行维护管理制度.docx VIP
- MobileFlow-大模型驱动的终端自动化测试新范式-2025研发效能最佳实践.pdf VIP
- OPPO企业AI赋能研效提升的应用与原理解析-2025研发效能最佳实践.pdf VIP
- 《第四单元 西方音乐发展史掠影学习学习项目二 音乐中的浪漫主义》七年级上册音乐人教版 教案(表格式)(2024新版).docx
- T∕CACM 1090-2018 中医治未病技术操作规范 穴位敷贴.docx VIP
- 学科教学与综合育人能力提升谈谈个人见解与感悟.docx VIP
- 新解读《GB_T 35070.3-2018停车场电子收费 第3部分:交易流程》.docx VIP
- 1 《中国人民站起来了》课件(共61张PPT)统编版高中语文选择性必修上册.pptx VIP
- CMF:中国宏观经济专题报告(第98期):读懂价格信号,稳住经济大盘.pdf VIP
- 字节跳动 研发效能提升之道-2025研发效能最佳实践.pdf VIP
文档评论(0)