Simple and efficient four-cycle counting on sparse graphs

Abstract

We consider the problem of counting 4-cycles (C4C_4) in a general undirected graph GG of nn vertices and mm edges (in bipartite graphs, 4-cycles are also often referred to as butterflies\textit{butterflies}). There have been a number of previous algorithms for this problem; some of these are based on fast matrix multiplication, which is attractive theoretically but not practical, and some of these are based on randomized hash tables. We develop a new simpler algorithm for counting C4C_4 requiring O(mδˉ(G))O(m\bar\delta(G)) time and O(n)O(n) space, where δˉ(G)≤O(m)\bar \delta(G) \leq O(\sqrt{m}) is the average degeneracy\textit{average degeneracy} parameter introduced by Burkhardt, Faber & Harris (2020). It has several practical improvements over previous algorithms; for example, it is fully deterministic, does not require any sorting of the adjacency list of the input graph, and avoids any expensive arithmetic in its inner loops. To the best of our knowledge, all previous efficient algorithms for C4C_4 counting have required Ω(m)\Omega(m) space. The algorithm can also be adapted to count 4-cycles incident to each vertex and edge

    Similar works

    Full text

    thumbnail-image

    Available Versions