How to find all the edges connecting a specific node with other nodes?

31 vues (au cours des 30 derniers jours)
Hi,
Let G be an undirected graph of 1000 nodes. How can I find all the edges of a specific node?
I cannot pass the node's ID as an input argument to the built-in function "findedge", so I would appreciate your help and ideas.
Thanks

Réponse acceptée

Christine Tobler
Christine Tobler le 20 Mai 2021
Use outedges to find the IDs of all outgoing edges, or neighbors to find all nodes connected to by these edges.

Plus de réponses (1)

Steven Lord
Steven Lord le 20 Mai 2021
Let's take a sample undirected graph.
G = graph(bucky);
What nodes are connected to node 51?
N = neighbors(G, 51)
N = 3×1
49 52 55
Let's plot the graph then highlight node 51 and its neighbors in the plot with large red stars instead of the small blue circles of the rest of the nodes.
h = plot(G);
highlight(h, [51; N], 'MarkerSize', 12, 'NodeColor', 'r', 'Marker', '*')
We can see that each of nodes 49, 52, and 55 are indeed connected to node 51.
  1 commentaire
Rayan Glus
Rayan Glus le 21 Mai 2021
Thank you so much for the great explanation.
Now, I can pass (s = 51) and its neighbors as t to built-in findedge.
Much appreciated.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Graph and Network Algorithms dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by