我是 MATLAB 软件的新手,目前正在尝试在没有被正式教授的情况下学习它,并且有一个非常简单的问题。
我有一个与有向图相对应的邻接矩阵,并希望查看哪些节点通过步行连接到网络中的其他节点。因此,给定一个具有 n 个节点的邻接矩阵:
D = [0,1,1,0,0,0,0;
0,0,0,1,1,0,0;
0,0,0,0,1,0,0;
0,0,0,0,0,1,0;
0,0,0,0,0,1,0;
0,0,0,0,0,0,1;
0,0,0,0,0,0,0]
我想找到每个节点的唯一后继者的数量。我目前正在使用代码来执行此操作,但它非常笨拙;每次更改矩阵时,我都需要更改代码。如下:
D1 = logical(D^1 + D^2 + D^3 + D^4 + D^5 + D^6 + D^7);
D1(logical(eye(size(D1)))) = 0;
B = sum(transpose(D1));
有没有办法整理代码并制作一个更通用的代码!?