数据结构课程设计

[复制链接]
查看11 | 回复1 | 2008-11-11 10:29:28 | 显示全部楼层 |阅读模式
五、无向图的建立及遍历操作
程序清单:
#include“stdio.h”
#include“alloc.h”
typedefstructnode
{

intadjvex;

struct node *next;
}edgenode;
tyedef struct vnode
{ int vertex;
edgenode*firstedge;
} vertexnode;
typedefvertexnode adjlist[10];
typedefstruct
{
adjlistal;
int n,e;
}graph;
graph*g;
int visited[10];
graph*creat( )
{inti ,j,k;

edgenode*s;

scanf(“%d%d”,&g->n,&g->e);

for(i=1;in;i++)

g->al.firstedge = NULL;

for(i=1;ke;k++)

{

scanf(“%d%d”,&i,&j);

s= malloc(sizeof(edgenode));

s->adjvex= j;

s->next = g->al.firstedge;

g->al.firstedge=s;

s= malloc(sizeof(edgenode));

s->adjvex=i;

s->next = g->al[j].firstedge;

g->al[j].firstedge= s;

}

return g;
}
void dfs(graph *g , int i)
{
edgenode*p;
printf(“visit vertext:%d\n”,i);
visited=1;
p=g->al.firstedge;
while(p)
{

if(!visited[p->adjvex];

dfs(g,p->adjvex);

p=p->next;
}
}
main( )
{
inti;
graph *g;
g = creat( );
for(i=1;in;i++)
visited=0;
for(i=1;in;i++)
if(!visited)
dfs(g , i);
}
这程序看了半天不知道什么意思···也不知道是不是什么地方出了错

回复

使用道具 举报

千问 | 2008-11-11 10:29:28 | 显示全部楼层
你想问什么?程序不能通过吗?...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行