MCPcopy Index your code
hub / github.com/pathwaycom/pathway / _bellman_ford_step

Function _bellman_ford_step

python/pathway/stdlib/graphs/bellman_ford/impl.py:26–37  ·  view source on GitHub ↗
(
    vertices_dist: pw.Table[DistFromSource], edges: pw.Table[Edge | Dist]
)

Source from the content-addressed store, hash-verified

24
25
26def _bellman_ford_step(
27 vertices_dist: pw.Table[DistFromSource], edges: pw.Table[Edge | Dist]
28) -> pw.Table[DistFromSource]:
29 relaxed_edges = edges + edges.select(
30 dist_from_source=vertices_dist.ix(edges.u).dist_from_source + edges.dist
31 )
32 vertices_dist = vertices_dist.update_rows(
33 relaxed_edges.groupby(id=relaxed_edges.v).reduce(
34 dist_from_source=pw.reducers.min(relaxed_edges.dist_from_source),
35 )
36 )
37 return vertices_dist
38
39
40@check_arg_types

Callers

nothing calls this directly

Calls 5

update_rowsMethod · 0.80
selectMethod · 0.45
ixMethod · 0.45
reduceMethod · 0.45
groupbyMethod · 0.45

Tested by

no test coverage detected