| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 907 人关注过本帖
标题:各位高人们 小弟有个编程题火急求助啊!
取消只看楼主 加入收藏
boy025
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2005-5-13
收藏
 问题点数:0 回复次数:1 
各位高人们 小弟有个编程题火急求助啊!
各位大哥们  小弟有个编程题求助啊
旅游导游系统问题
问题描述:假设一个旅游景区由n个不同景点组成(有向网),并用带权邻接矩阵表示,权值表示两个景点间的步行时间,试编写程序求任意两个景点间的最短步行时间。
时间很紧急啊   谢谢大哥大姐们      求源码
感激万分ing
搜索更多相关主题的帖子: 火急 
2005-05-13 13:46
boy025
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2005-5-13
收藏
得分:0 
热情斑竹    能把下面这个程序改成我那个题目要求的程序吗?
#include "math.h"
#define maxvex 100
#define max 6000
int n,p,m;
int i,j,k,w,v;
typedef struct graph
{
 int vexs[maxvex];
 int path[maxvex][maxvex];
}adjmax;
createdun()
{ adjmax adj;
 printf("the vexnum:\n");
 scanf("%d",&n);
 printf("the path:\n");
 scanf("%d",&p);
 m=n*(n-1)/2;
 if(p>m)
{ printf("error");
 goto exit;
}
 for(i=0;i<n;i++)
 adj.vexs[i]=i;
 for(i=0;i<n;i++)
  for(j=0;j<n;j++)
  adj.path[i][j]=max;
  for(k=0;k<p;k++)
{
 printf("the %d path:",k);
 printf("\n\t start:");
 scanf("%d",&i);
 printf("\n\t end:");
 scanf("%d",&j);
 printf("\n\t data:");
 scanf("%d",&w);
 if(i>=n)
{
 printf("error\n");
 goto exit;
}
 if(j>=n)
{
 printf("error\n");
 goto exit;
}
 adj.path[i][j]=adj.path[j][i]=w;
 printf("path[%d][%d]=%d\n",i,j,w);
}
exit: getch( );
}
shortestpath(int v,int w)
{
 adjmax adj;
 int min;
 int d[maxvex],p[maxvex][maxvex],s[maxvex];
 for(i=0;i<n;i++)
{
 s[i]=0;d[i]=adj.path[v][i];
 for(j=0;j<n;j++) p[i][j]=0;
 if(d[i]<max)
{
 p[i][v]=1;
 p[i][i]=1;
}
}
 d[v]=0;s[v]=1;
 for(i=1;i<n;i++)
{
 min=max;
 for(j=0;j<n;j++)
  if(!s[j])
   if(d[j]<min)
{
 k=j;
 min=d[j];
}
 s[k]=1;
 for(j=0;j<n;j++)
  if(!s[j]&&(min+adj.path[k][j]<d[j]))
{
 d[j]=min+adj.path[k][j];
 p[j][j]=1;
}
}
 printf("\nthe shortest path is:");
 for(i=0;i<n;i++)
 if(p[w][i])
{
 k=i;
 printf("%d ",k);
}
printf("\npath[%d][%d]=%d\n",v,w,d[w]);
}
main()
{
 int a,b;
 createdun();
 printf("\ninput the start point:");
 scanf("%d",&a);
 printf("\ninput the end point:");
 scanf("%d",&b);
 shortestpath(a,b);
 getch( );
}

2005-05-13 19:23
快速回复:各位高人们 小弟有个编程题火急求助啊!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029821 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved