- Generate all possible edges without self-loops for a graph with 5 nodes.
- Randomly select 10 edges from these possible edges.
- Create the graph using the selected edges.
how can i create a graph by selecting random edges in a set of given edges?
1 view (last 30 days)
Show older comments
hi, i need to create an graph with edges=10 and nodes=5, since i can have 1024 different combinations with out selfloops, how can i generate a graph by selecting random edges
0 Comments
Answers (1)
BhaTTa
on 9 Sep 2024
@Krishna Bezawada, to generate a graph with 5 nodes and 10 edges in MATLAB, you can use the graph function. Since you want to randomly select edges without self-loops, you can follow these steps:
Here's a MATLAB script to accomplish this:
% Number of nodes and edges
numNodes = 5;
numEdges = 10;
% Generate all possible edges without self-loops
allEdges = nchoosek(1:numNodes, 2); % Combinations of two nodes
% Check the number of possible edges
numPossibleEdges = size(allEdges, 1);
% Ensure that the number of edges is feasible
if numEdges > numPossibleEdges
error('The number of edges exceeds the possible number without self-loops.');
end
% Randomly select edges
selectedEdgesIdx = randperm(numPossibleEdges, numEdges);
selectedEdges = allEdges(selectedEdgesIdx, :);
% Create and plot the graph
G = graph(selectedEdges(:, 1), selectedEdges(:, 2));
% Plot the graph
figure;
plot(G);
title('Randomly Generated Graph');
0 Comments
See Also
Categories
Find more on Graph and Network Algorithms in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!