Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

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

1 vue (au cours des 30 derniers jours)
AAS
AAS le 23 Avr 2020
Clôturé : MATLAB Answer Bot le 20 Août 2021
for each node, I have many edges how can I make it choose the shortest edge per node?

Réponses (1)

BobH
BobH le 23 Avr 2020
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.

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by