题目信息

题目类型
练习
题目年份
2025
题目题型
编程题
关 键 词
求单源最短路的Dijkstra算法

题目题干

ftc100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
求单源最短路的Dijkstra算法

请编写程序,实现在带权的有向图中求单源最短路的 Dijkstra 算法。ftc100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
注意:当多个待收录顶点路径等长时,按编号升序进行收录。ftc100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输入格式:

输入首先在第一行给出两个正整数,依次为当前要创建的图的顶点数 n(≤100)和边数 m。ftc100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
随后 m 行,每行给出一条有向边的起点编号、终点编号、权重。顶点编号从 0 开始,权重(≤100)为整数。同行数字均以一个空格分隔。ftc100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输出格式:

参考样例。按顶点编号的升序,每行输出一个顶点的信息,格式为:ftc100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

v[i]: dist=x, path=y

其中 i 为顶点编号;x 为顶点 0 到顶点 i 的最短距离;y 为对应的最短路径上,i 的前驱顶点编号。因为起点 0 没有前驱顶点,所以对应的 y 记为 -1ftc100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输入样例:

6 9
0 1 1
0 2 12
1 2 9
1 3 3
2 4 5
3 2 4
3 4 13
3 5 15
4 5 4

输出样例:

v[0]: dist=0, path=-1
v[1]: dist=1, path=0
v[2]: dist=8, path=3
v[3]: dist=4, path=1
v[4]: dist=13, path=2
v[5]: dist=17, path=4

答案解析

相关题目

求单源最短路的Bellman-Ford算法请编写程序,实现在带负值权的有向图中求单源最短路的 Bellman-Ford 算法。 输入格式: 输入首先在第一行给出两个正整数,依次为当前要创建的图的顶点
求单源最短路的Dijkstra算法请编写程序,实现在带权的有向图中求单源最短路的 Dijkstra 算法。 注意:当多个待收录顶点路径等长时,按编号升序进行收录。 输入格式: 输入首先在第一行给出两
哥尼斯堡的“七桥问题” 哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示。 可否走过这样的七座桥,而且每桥只走过一次?瑞士数学家欧拉(Leonhard Euler
哥尼斯堡的“七桥问题” 哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示。 可否走过这样的七座桥,而且每桥只走过一次?瑞士数学家欧拉(Leonhard Euler
双连通分量本题请你编写程序,输出给定无向连通图中的割点和割边。 输入格式: 输入首先在第一行给出图中最大顶点数量,即正整数 kMaxVertex(≤20)。 第二行给出两个正整数,依次为当前要创建的
欧拉回路本题请你编写程序,输出给定无向连通图中的欧拉回路。 输入格式: 输入首先在第一行给出图中最大顶点数量,即正整数 kMaxVertex(≤20)。 第二行给出两个正整数,依次为当前要创建的图的
强连通分量本题请你编写程序,输出给定有向图中的各个强连通分量,并统计强连通分量的个数。 输入格式: 输入首先在第一行给出 2 个整数,依次为有向图的顶点数 n(0<n≤15)和边数 m。 随后
验证六度空间理论所谓“六度空间理论”是指:在世界上任何两个陌生人之间所间隔的人数不会超过 6 个。本题就请你编写程序,根据输入的人与人之间的关系,统计以某个人为起点的所有满足该理论(即与该起点之间间隔
图的连通性判断请编写程序,用广度优先搜索输出给定无向图中的各个连通分量,并判断给定的无向图是否连通。 注意输出顺序规定如下: 每个连通分量的输出从其中编号最小的顶点开始; 不同连通分量按其第一个顶点
广度优先遍历请编写程序,用广度优先搜索输出给定无向图中的各个连通分量。 注意输出顺序规定如下: 每个连通分量的输出从其中编号最小的顶点开始; 不同连通分量按其第一个顶点的编号增序输出,每个连通分量占

提示声明

  • 免责声明:本站资源均来自网络或者用户投稿,仅供用于学习和交流:如有侵权联系删除!
  • 温馨提示:本文属于积分文章,需要充值获得积分或升级VIP会员,也可在会员中心投稿获取。

猜你喜欢