maximum capacity path
[p,cap] = max_cap_path(i,j,g)
integers, node numbers
row vector of integer numbers of the arcs of the path if it exists
value of the capacity of the path
max_cap_path
returns the path with
maximum capacity from node i
to node
j
for the graph g
if it
exists and returns the empty vector []
otherwise.
The capacities of the edges are given by the field
g.edges.data.max_cap
of the graph.
The value of the capacity must be non negative.
If the value of max_cap
is not
given it is assumed to be equal to 0 on each edge.
If the max_cap
data fields is not present in the
graph structure it can be added and set using the add_edge_data function.
ta=[1 1 2 2 2 3 4 5 5 7 8 8 9 10 10 10 11 12 13 13 13 14 15 16 16 17 17]; he=[2 10 3 5 7 4 2 4 6 8 6 9 7 7 11 15 12 13 9 10 14 11 16 1 17 14 15]; g=make_graph('foo',1,17,ta,he); g.nodes.graphics.x=[142,82,32,29,82,82,137,136,170,192,252,257,220,312,316,379,321]*1.2; g.nodes.graphics.y=[30,67,112,159,114,160,111,162,216,71,105,160,214,222,94,76,151]*1.2; g = add_edge_data(g,'max_cap',int(rand(1,edge_number(g))*16)+5) g.edges.graphics.display='max_cap'; g.nodes.graphics.display='number'; show_graph(g); hilite_nodes([1 14]) [p,cap]=max_cap_path(1,14,g); hilite_edges(p); | ![]() | ![]() |