-->
当前位置:首页 > 题库 > 正文内容

程序填空题:采用邻接矩阵表示法创建无向网

Luz4年前 (2021-05-10)题库2000
采用邻接矩阵表示法创建无向网。

```c++
#include
using namespace std;
#define MaxInt 32767
#define MVNum 100
#define OK 1
typedef char VerTexType;
typedef int ArcType;
typedef struct{
VerTexType vexs[MVNum];
ArcType arcs[MVNum][MVNum];
int vexnum,arcnum;
}AMGraph;

int LocateVex(AMGraph G , VerTexType v){
for(int i = 0; i < G.vexnum; ++i)
if(G.vexs[i] == v)
return i;
return -1;
}

int CreateUDN(AMGraph &G){
int i , j , k;
cin >> G.vexnum >> G.arcnum;
for(i = 0; i < G.vexnum; ++i){
cin >> G.vexs[i];
}
for(i = 0; i < G.vexnum; ++i)
for(j = 0; j < G.vexnum; ++j)
G.arcs[i][j] = MaxInt;
for(k = 0; k < G.arcnum;++k){
VerTexType v1 , v2;
ArcType w;
cin >> v1 >> v2 >> w;
i = @@[LocateVex(G, v1)](2);
j = @@[LocateVex(G, v2)](2);
G.arcs[i][j] =@@[w](2);
G.arcs[j][i] = @@[G.arcs[i][j]](2);
}
return OK;
}

```






答案:
第1空:LocateVex(G, v1)

第2空:LocateVex(G, v2)

第3空:w

第4空:G.arcs[i][j]

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。