实现(第 2 部分)
Coddy Bellman-Ford 算法:图算法 课程的第 6 课,共 9 课。
现在重复这一轮,直到距离确定。
挑战
中等现在来看完整算法:重复进行松弛遍,直到距离稳定下来。
编写一个名为 bellmanFord 的函数,接收 n、扁平的 edges 数组(包含三元组、有向边,边权可能为负)和一个 source,并返回从 source 到每个顶点的最短距离。无法到达的顶点用 -1 表示。假设不存在负环。
对所有边进行 n - 1 次松弛。
亲手试试
#include <stdlib.h>
int* bellmanFord(int n, int* edges, int edges_size, int source, int* returnSize) {
// 在这里编写代码
*returnSize = 0;
return edges;
}
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
Bellman-Ford 算法:图算法中的所有课
自己练习: C 在线编译器