Adjacency matrix.I want to simply the code .

clc;
clear all;
n = 10;
C= zeros(n, n);
C(1,n)=1;
C(1,n-1)=1;
C(2,n)=1;
A = zeros(n, n);
for i = 1:n
for j = 1:n
if j==i+1 || j == i + 2
A(i,j) = 1;
else
A(i, j) = 0;
end
end
end
B1=A+C
B=B1+B1';
G=graph(B);
plot(G)

 Accepted Answer

n = 10;
x=accumarray([2 3 n-1 n]',1);
B = toeplitz(x,x);
G=graph(B);
plot(G)

2 Comments

How can I write a code when few node are connected five edges and some nodes are connected four,three and 2 edges .please help me on this .
how can i rewired by replacing 2 edges at random then the code will be ?

Sign in to comment.

More Answers (1)

You can get a fair bit of the way with
B1 = diag(ones(n-1,1),1) + diag(ones(n-2,1),2);
You will still need to do the upper right corner, but that is not difficult (use two more diag calls)

Categories

Find more on Graph and Network Algorithms in Help Center and File Exchange

Asked:

mks
on 13 Aug 2023

Commented:

mks
on 14 Aug 2023

Community Treasure Hunt

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

Start Hunting!