3 research outputs found
Nearly Optimal Space Efficient Algorithm for Depth First Search
We design a space-efficient algorithm for performing depth-first search
traversal(DFS) of a graph in time using bits of space.
While a normal DFS algorithm results in a DFS-tree (in case the graph is
connected), our space bounds do not permit us even to store such a tree.
However, our algorithm correctly outputs all edges of the DFS-tree.
The previous best algorithm (which used working space) took time (Asano, Izumi, Kiyomi, Konagaya, Ono, Otachi, Schweitzer, Tarui,
Uehara (ISAAC 2014) and Elmasry, Hagerup, Krammer (STACS 2015)). The main open
question left behind in this area was to design faster algorithm for DFS using
bits of space. Our algorithm answers this open question as it has a
nearly optimal running time (as the DFS takes time even if there is no
space restriction)
Sorting and Ranking of Self-Delimiting Numbers with Applications to Tree Isomorphism
Assume that an -bit sequence of self-delimiting numbers is given
as input. We present space-efficient algorithms for sorting, dense ranking and
(competitive) ranking on the word RAM model with word size
bits. Our algorithms run in time and use bits.
The sorting algorithm returns the given numbers in sorted order, stored within
a bit-vector of bits, whereas our ranking algorithms construct data
structures that allow us subsequently to return the (dense) rank of each number
in in constant time if the position of in is given together
with .
As an application of our algorithms we give an algorithm for tree
isomorphism, which runs in time and uses bits on -node trees.
The previous best linear-time algorithm for tree isomorphism uses bits
Space-Efficient Vertex Separators for Treewidth
For -vertex graphs with treewidth and an
arbitrary , we present a word-RAM algorithm to compute vertex
separators using only bits of working memory. As an application of our
algorithm, we give an -approximation algorithm for tree decomposition.
Our algorithm computes a tree decomposition in
time using bits for some constant .
We finally use the tree decomposition obtained by our algorithm to solve
Vertex Cover, Independent Set, Dominating Set, MaxCut and -Coloring by using
bits as long as the treewidth of the graph is smaller than
for some problem dependent constant