A new efficient algorithm is presented for finding all simple cycles that satisfy a length constraint in a directed graph. When the number of vertices is non-trivial, most cycle-finding problems are of practical interest for sparse graphs only. We show that for a class of sparse graphs in which the vertex degrees are almost uniform, our algorithm can find all cycles of length less than or equal to k in O((c+n)(k-1)d^k) steps, where n is the number of vertices, c is the total number of cycles discovered, d is the average degree of the graph's vertices, and k > 1. While our analysis for the running time addresses only a class of sparse graphs, we provide empirical and experimental evidence of the efficiency of the algorithm for general sparse graphs. Despite its several applications, to the best of our knowledge, no deterministic algorithm for this problem has been proposed to date. Our algorithm also lends itself to massive parallelism. Experimental results of a serial implementation on some large real-world graphs are presented.
A new efficient algorithm is presented for finding all simple cycles that satisfy a length constraint in a directed graph. When the number of vertices is non-trivial, most cycle-finding problems are of practical interest for sparse graphs only. We show that for a class of sparse graphs in which the vertex degrees are almost uniform, our algorithm can find all cycles of length less than or equal to k in O((c+n)(k-1)d^k) steps, where n is the number of vertices, c is the total number of cycles discovered, d is the average degree of the graph's vertices, and k > 1. While our analysis for the running time addresses only a class of sparse graphs, we provide empirical and experimental evidence of the efficiency of the algorithm for general sparse graphs. This algorithm is a significant improvement over the only other deterministic algorithm for this problem known to us; it also lends itself to massive parallelism. Experimental results of a serial implementation on some large real-world graphs are presented.
R
Despite its several applications, to the best of our knowledge, no
This algorithm is a significant improvement over the only other
R
has been proposed to date. Our algorithm
known to us; it