#1497. 算法基础-最短路

算法基础-最短路

1、Floyd 算法

机器人从起点出发前往目的地,途中有各种障碍物,清理木材障碍物需要消耗的能量2;清理石块障碍物需要消耗的能量3;清理水泥块需要消耗的能量5。

image

机器人出发前有 10 格能量,到达目的地时必须至少剩 1 格能量。走哪条路可以顺利到达目的地? ({{ select(1) }})

  • 起点 -> A -> D -> 目的地
  • 起点 -> A -> C -> 目的地
  • 起点 -> B -> C -> 目的地
  • 起点 -> B -> A -> C -> 目的地

2、下图的黄色线代表路,路上的数代表走过这段路消耗的体力值。

image

小谕从家到学校,最少需要消耗的体力值为( {{ input(2) }} )。

3、Dijkstra 算法

“仙境漫游”主题公园有 7 个小岛,有的小岛之间有路相连,用线表示,线上的数字代表路的长度。如下图所示:

image

小蓝想从 A 到 B,最短的路长度是多少?( {{ input(3) }} )

4、Dijkstra 算法堆优化

下面关于 Dijkstra 算法求最短路,不正确的是 ( {{ select(4) }} )

  • Dijkstra 算法适用于带权重的有向图和无向图
  • Dijkstra 算法的时间复杂度为 O(n^2),其中 n 为图中节点的数量,堆优化的 Dijkstra 算法可以降低时间复杂度
  • Dijkstra 算法每次从当前未处理的节点中选择权重最小的节点作为当前处理的节点
  • Dijkstra 算法可以用于存在负权重边的图中

5、SPFA 算法

一个送餐员,要骑车从家出发,给 4 个顾客送餐,然后返回家。下面的地图中,每个圆圈代表一个地方,1 是送餐员的家,2,3,4,5 是顾客所在地。连接两个圆圈的线段表示路,线上面的数字是行驶这段路所需时间。

image

请你帮送餐员设计一条线路,使他用最短时间完成送餐任务并返回家。这个最短的时间是( {{ input(5) }} )。

注意:

  1. 路都可以双向行驶;
  2. 考虑到路况因素,行驶所需时间与线段的长度无关。

6、差分约束系统

哪项是下面不等式组的一组解?( {{ select(6) }} )

image

  • 0 -2 0
  • 0 2 0
  • 3 5 3
  • 5 3 3