In the decremental single-source shortest paths (SSSP) problem, we want to maintain the distances between a given source node s and every other node in an n-node m-edge graph G undergoing edge deletions. While its static counterpart can be solved in near-linear time, this decremental problem is much more challenging even in the undirected unweighted case. In this case, the classic O(mn) total update time of Even and Shiloach  has been the fastest known algorithm for three decades. At the cost of a (1+)-approximation factor, the running time was recently improved to n2+o(1) by Bernstein and Roditty . In this article, we bring the running time down to near-linear: We give a (1+)-approximation algorithm with m1+o(1) expected total update time, thus obtaining near-linear time. Moreover, we obtain m1+o(1) log W time for the weighted case, where the edge weights are integers from 1 to W. The only prior work on weighted graphs in o(mn) time is the mn0.9 + o(1)-time algorithm by Henzinger et al. [18, 19], which works for directed graphs with quasi-polynomial edge weights. The expected running time bound of our algorithm holds against an oblivious adversary.
In contrast to the previous results, which rely on maintaining a sparse emulator, our algorithm relies on maintaining a so-called sparse (h, )-hop set introduced by Cohen  in the PRAM literature. An (h, )-hop set of a graph G=(V, E) is a set F of weighted edges such that the distance between any pair of nodes in G can be (1+)-approximated by their h-hop distance (given by a path containing at most h edges) on G′=(V, E F). Our algorithm can maintain an (no(1), )-hop set of near-linear size in near-linear time under edge deletions. It is the first of its kind to the best of our knowledge. To maintain approximate distances using this hop set, we extend the monotone Even-Shiloach tree of Henzinger et al.  and combine it with the bounded-hop SSSP technique of Bernstein [4, 5] and Mądry . These two new tools might be of independent interest.