Hi,
I have been playing with graphs outside of networkX, represented as
symetric sparse matrices.
I want to enumerate the connect components of my graph. If I am not
right, I can use scipy.sparse.arpack.eigen_symmetric to find out the
largest eigen vectors of the graph, use the sign of this eigen vector if
the eigen value is greater than 1 to split the graph, and iter on the sub
graphs as long as the largest eigen value is greater than one.
I happen to need the largest eigen value of each connect components (I am
doing diffusion maps), so I am going to do linear algebra anyhow. The
arpack documentation claims that the computation cost scales with the
order of the matrix
(
http://www.caam.rice.edu/software/ARPACK/UG/node56.html). I am
wondering, is there any reason to detect connect doing graph traversal?
What is the computational cost of the algorithm used in networkx (~ the
order of the graph, I suppose)?
These questions are quite academic, as I have small graphs, but I like to
learn.
Thanks,
Ga�l