/*********************邻接矩阵实现无向图******************/
class MatrixUDG
{
private:
char mVexs[MAX];//顶点集合
int mVexBum;//顶点数
int mEdgNum;//边数
int mMatrix[MAX][MAX];//邻接矩阵
char readChar();//读取一个字符
int getPosition(char ch);//返回ch在矩阵中中的位置
public:
MatrixUDG();//创建图(自己输入数据)
MatrixUDG(const char *vexs, int vlen,char edges[][2], int elen);//创建图(用已提供的数据)
~MatrixUDG();
void print();//打印矩阵队列图
};
//读取一个字符
char MatrixUDG::readChar()
{
char ch;
cout << "input a ch: ";
cin >> ch;
return ch;
}
//返回ch在矩阵中的位置
int MatrixUDG::getPosition(char ch)
{
for (int i = 0; i < this->mVexBum; i++)
{
if (this->mVexs[i] == ch)
return i;
}
return -1;
}
//创建图(自己输入数据)
MatrixUDG::MatrixUDG()
{
char c1, c2;
int p1, p2;
cout << "构造函数" << endl;
cout << "input vertex number: ";
cin >> mVexBum;
cout << "input edge number: ";
cin >> mEdgNum;
if (this->mVexBum <
C++邻接矩阵实现有向图、无向图
最新推荐文章于 2024-07-27 19:56:33 发布
本文详细介绍了如何使用C++编程语言通过邻接矩阵来实现有向图和无向图的数据结构。内容涵盖了邻接矩阵的概念、初始化、插入边以及遍历图的方法,帮助读者理解并掌握这一重要的图论概念在实际编程中的应用。
摘要由CSDN通过智能技术生成