[C++] 纯文本查看 复制代码#include

#include

#include

#include

using namespace std;

#define inf 10000

const int MAX = 100;

struct link

{

int data;

string name;

link *lnext;

};

struct Node

{

int v;

string nn;

link *lnext;

};

struct Graph

{

Node node[MAX+1]; //所有的结点

int ncount;

};

int visited[MAX+1]; //查询是否走过的数组

int pa[MAX+1];

int tono(Graph G,string n){

for(int i=1;i<=G.ncount;++i){

if(G.node[i].nn==n)

return i;

}

}

string toname(Graph G,int q){

for(int i=1;i<=G.ncount;++i){

if(G.node[i].v==q)

return G.node[i].nn;

}

}

Graph CreateGraph()

{

int a,b,c,d;

cout<

cin>>a>>b;

//表的初始化 ,人数是节点

Graph G;

G.ncount = a;

int i ;

string na;

for(i = 1; i <= a; i ++)

{ cout<

cin>>na;

G.node[i].nn = na;

G.node[i].v = i;

G.node[i].lnext = NULL;

}

int n1 = 0,n2 = 0;

link *s;

string n5,n6;

for(int i=0;i

{ cout<

cin>>n5>>n6;

c = tono(G,n5);

d = tono(G,n6);

s = new link;

s->data = d;

s->name = n6;

s->lnext=G.node[c].lnext;

G.node[c].lnext=s; //从尾部插入

//delete(s);

s=new link;

s->data = c;

s->name = n5;

s->lnext=G.node[d].lnext;

G.node[d].lnext=s; //无向图

//delete(s);

}

return G;

}

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐