find commun neighbor of matrix
    8 views (last 30 days)
  
       Show older comments
    
Hello, I have a graph which is represented by this matrix A =[0 1 0 1; 1 0 0 0; 0 1 0 0; 1 0 1 0;]
i went to search the no nodes of matrix which have a commun neighbor, for exemple node 1 is connected with [2,4] and node 2 is connected with [1, 4] so nodes 1 and 2 have a commun neighbor which is node 4
can you Help me PLEASE? ^-^
4 Comments
  Santhana Raj
      
 on 31 May 2017
				If the matrix you have given is a node connectivity matrix, doesn't this has to be symmetric??
  Walter Roberson
      
      
 on 31 May 2017
				Not for directed graphs it does not need to be symmetric.
"having a common neighbor" in a directed graph situation does not promise that the nodes are reachable from each other. For example node 4 might have directed links only towards nodes 1 and 2, with there being way to get from node 1 to node 2 by way of node 4.
Answers (1)
  Santhana Raj
      
 on 1 Jun 2017
        From my understanding of nodes,
A =[0 1 0 1; 1 0 0 0; 0 1 0 0; 1 0 1 0;]
h=zeros(4);
for i=1:4
    [~,H]=find(A(i,:)==1);
    h(i,1:length(H))=H;
end
neigh=[];
for i=1:4
    if numel(nonzeros(h(:)==i))>1
        neigh=[neigh i];
    end
end
this seems to work.
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



