Abstract
We present an algorithm that finds, for each vertex of an undirected graph, a shortest cycle containing it. While for directed graphs this problem reduces to the All-Pairs Shortest Paths problem, this is not known to be the case for undirected graphs. We present a truly sub-cubic randomized algorithm for the undirected case. Given an undirected graph with n vertices and integer weights in 1,...,M, it runs in Õ(Mn(ω+3)/2) time where ω<2.376 is the exponent of matrix multiplication. As a by-product, our algorithm can be used to determine which vertices lie on cycles of length at most t in Õ(Mnωt) time. For the case of bounded real edge weights, a variant of our algorithm solves the problem up to an additive error of ∈ in Õ(n(ω+6)/3) time.
Original language | English |
---|---|
Pages (from-to) | 1057-1061 |
Number of pages | 5 |
Journal | Information Processing Letters |
Volume | 111 |
Issue number | 21-22 |
DOIs | |
State | Published - 15 Dec 2011 |
Keywords
- Girth
- Graph algorithms
- Shortest path
- Undirected graph
ASJC Scopus subject areas
- Theoretical Computer Science
- Signal Processing
- Information Systems
- Computer Science Applications