MATLAB Answers

How can I get my minimum spanning tree to select only one edge?

1 ビュー (過去 30 日間)
AAS
AAS 2020 年 4 月 23 日
回答済み: BobH 2020 年 4 月 23 日
for each node, I have many edges how can I make it choose the shortest edge per node?

  0 件のコメント

サインインしてコメントする。

回答 (1 件)

BobH
BobH 2020 年 4 月 23 日
If this calculation is a smaller part of a larger problem like determining the shortest path between a pair of distant nodes, there is a function for the larger problem http://www.mathworks.com/help/bioinfo/ref/graphshortestpath.html
I am assuming "shorted edge" means the same as "lowest weight".
For a single node connected to multiple other nodes, for example node 1 connects to nodes 2-6 using weights of 4 6 8 10 12
s = [1 1 1 1 1];
t = [2 3 4 5 6];
w = [8 12 6 4 10];
R = sparse(s, t, w);
minw = min(R(1,[2:6])); % value of lowest weight for node 1, ignoring node 1
minwIx = find(R == minw); % index into R of the lowest weight. There may be more than one.

  0 件のコメント

サインインしてコメントする。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by