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

✅更多源码 | 课设

✅ 🚀快速解决各种课设毕设,窗体、网站、管理系统,范围 (Java、C#、C/C++、数据库、Vue、小程序)

✅ 🚀 文末联系 可定做🚀

题目介绍

代码量: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 );
}

联系我

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学长敲代码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值