最短路径(图论-北京地铁线路查询)

目录

  

  

  

 1 int main(){
 2 
 3     printf("北京地铁乘坐线路查询系统\n");
 4 /*---------------------------------------------------*/
 5 
 6 /*---------------------------------------------------*/
 7     freopen("bgstations.txt","r",stdin);
 8     int LINE;                            /*地铁总线数*/
 9     scanf("%d ",&LINE);
10     int i,j;
11     /*初始化*/
12     for(i=0;i<NUM;i++)
13         for(j=0;j<NUM;j++){
14             graph[i][j].weight=graph[j][i].weight=MAX;
15             graph[i][j].L=graph[j][i].L=0;
16         }
17 /*---------------------------------------------------*/
18     /*建图*/
19     create(LINE);
20     freopen("CON", "r", stdin);
21 /*--------------------------------------------------*/
22     /*查找起始站与终点站对应的顶点编号*/
23     make();
24     system("pause");
25     return 0;
26 }

   

  

 1 可以先控制台输入起始站和终点站char name_start[N],name_end[N];
 2 然后用文件输入:
 3 初始化图的权重和线路编号;
 4 输入线路总数scanf("%d ",&LINE);
 5 循环{
 6        输入线路编号和该路站数scanf("%d %d ",&no,&sum);
 7        设置标记上一站 last=-1 8        循环{
 9              输入站名和换乘状态scanf("%s %d ",name,&is);
10              /*查找该站是否已存在*/ int index=search(name);
11              如果不存在{
12           保存该站,记录该站与上一站的线路编号,
13         并更新last;
14 
15              }否则直接记录并更新last;
16 17

  

以上内容来自我个人制作的PPT如果需要资料请联系我!

猜你喜欢

转载自www.cnblogs.com/ye-buaasece/p/10506786.html