//图,已经成功实现
#include<iostream>
#include<cstdlib>
#define MaxNum 20
#define MaxValue 128
using namespace std;
typedef struct Graph //定义图的结构
{
char Vertex[MaxNum]; //节点,字符串类型
int GType; //图的类型,0代表无像图,1代表有向图
int VertexNum; //节点数量
int EdgeNum; //边数量
int EdgeWight[MaxNum][MaxNum]; //代表图的每条边,及其权值
int isTrav[MaxNum]; //isTrav数组表示该节点是否遍历过
};
void CreateGraph(Graph *G) //创建一个图
{
int i, j, k;
int weight;
char Estart, Eend;
cout << "输入各顶点信息 : " << endl;
for (i = 0; i < G->VertexNum; i++)
{
cout << "第 " << i + 1 << " 个定点 " << endl;
cin >> G->Vertex[i];
}
cout << "输入各边顶点及权值 " << endl;
for (k = 0; k < G->EdgeNum; k++)
{
cout << "第 " << k + 1 << " 条边 " << endl;
cin >> Estart >> Eend >> weight;
for (i = 0; G->Vertex[i] != Estart; i++);
for (j = 0; G->Vertex[j] != Eend; j++);
G->EdgeW
C++ 图的实现
最新推荐文章于 2022-04-15 11:44:57 发布