下面给大家介绍一些经典的图论算法,C++描述。
#include<cstring>
//常量定义:
constintmaxV=100;
constdoubleInf=1e100;
//constintInf=2000000000;
//Graph 类定义:
template<classT>
structGraphMatrix{
intv;//顶点数
inte;//边数
Ta[maxV][maxV];//邻接矩阵
voidinit(){
memset(a,0,sizeof(a));
}
voidclear(){
inti,j;
for(i=0;i<v;++i){
for(j=0;j<v;++j)
a[i][j]=Inf;
}
}
};
#include<list>
usingstd::list;
template<classT>
structGraphList{
intv;
inte;
list<T>a[maxV];//邻接表
voidclear(){//clear()应在更改 v 之前进行
inti;
for(i=0;i<v;i++)
a[i].clear();
}
~GraphList(){ [Page]
v=maxV;
clear();
}
};
namespacebridgeNS{
/**//*解决:查找、打印桥
评论1