【源码】校园导航系统(迪杰斯特拉)

2021/4/10 12:57:37

本文主要是介绍【源码】校园导航系统(迪杰斯特拉),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

文章目录

  • 题目介绍
  • 功能
  • 源码效果展示
  • 联系我

题目介绍

代码量:380

题目介绍:

知识点:图,三维数组等数据结构。采用迪杰斯特拉算法求最短路径、最短时间

功能

源码效果展示

部分源码及效果展示


我们可以加入中间点来查询路径的最快时间和最短路径

void show4(int i,int j, int temp) 
{
	int k=0,a=i,b=j;
	int S;
	double L;
	int h,m,s;
	printf("\n请输入起始时间(hh:mm:ss):");
	scanf("%d:%d:%d",&h,&m,&s);
	if(shortest[i][j][temp]!=Maxedge)
	{
		if(temp == 0)
		printf("从%s到%s的最短路径为:\n",ver[i].name,ver[j].name);
		if(temp == 1)
		printf("从%s到%s的最快时间的路径为:\n",ver[i].name,ver[j].name);
		printf("%s",ver[i].name);
		while(path[i][j][temp]!=0)
		{
			k=path[i][j][temp];
			while(path[i][k][temp]!=0)
		{
			k=path[i][k][temp];
		}
			printf("----%s",ver[k].name);
			i=k;
		}
		  	printf("----%s;\n",ver[j].name );
		  	if(temp == 0)
		  	{
		  		printf("最短距离为:%d米。\n",shortest[a][b][temp]);
				S = shortest[a][b][temp] / 1;//(人每秒1米) 
				time(h, m, s, S);
			  }
			  	if(temp == 1)
			  	{
			  		printf("最快时间为:%d秒。\n",shortest[a][b][temp]);
					time(h, m, s, shortest[a][b][temp]);	
				  }
					
	}
	else
		printf("从%s不能到达%s。",ver[i].name ,ver[j].name );
}

联系我

你可以选择任意一个联系,不用重复添加

联系方式1:QQ207732272

联系方式2:QQ1436834022

联系方式3:QQ149478984



这篇关于【源码】校园导航系统(迪杰斯特拉)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程