380 research outputs found

    Space-Efficient Biconnected Components and Recognition of Outerplanar Graphs

    Get PDF
    We present space-efficient algorithms for computing cut vertices in a given graph with nn vertices and mm edges in linear time using O(n+min{m,nloglogn})O(n+\min\{m,n\log \log n\}) bits. With the same time and using O(n+m)O(n+m) bits, we can compute the biconnected components of a graph. We use this result to show an algorithm for the recognition of (maximal) outerplanar graphs in O(nloglogn)O(n\log \log n) time using O(n)O(n) bits

    On Temporal Graph Exploration

    Full text link
    A temporal graph is a graph in which the edge set can change from step to step. The temporal graph exploration problem TEXP is the problem of computing a foremost exploration schedule for a temporal graph, i.e., a temporal walk that starts at a given start node, visits all nodes of the graph, and has the smallest arrival time. In the first part of the paper, we consider only temporal graphs that are connected at each step. For such temporal graphs with nn nodes, we show that it is NP-hard to approximate TEXP with ratio O(n1ϵ)O(n^{1-\epsilon}) for any ϵ>0\epsilon>0. We also provide an explicit construction of temporal graphs that require Θ(n2)\Theta(n^2) steps to be explored. We then consider TEXP under the assumption that the underlying graph (i.e. the graph that contains all edges that are present in the temporal graph in at least one step) belongs to a specific class of graphs. Among other results, we show that temporal graphs can be explored in O(n1.5k2logn)O(n^{1.5} k^2 \log n) steps if the underlying graph has treewidth kk and in O(nlog3n)O(n \log^3 n) steps if the underlying graph is a 2×n2\times n grid. In the second part of the paper, we replace the connectedness assumption by a weaker assumption and show that mm-edge temporal graphs with regularly present edges and with random edges can always be explored in O(m)O(m) steps and O(mlogn)O(m \log n) steps with high probability, respectively. We finally show that the latter result can be used to obtain a distributed algorithm for the gossiping problem.Comment: This is an extended version of an ICALP 2015 pape

    Space-Efficient Plane-Sweep Algorithms

    Get PDF
    We introduce space-efficient plane-sweep algorithms for basic planar geometric problems. It is assumed that the input is in a read-only array of n items and that the available workspace is Theta(s) bits, where lg n <= s <= n * lg n. Three techniques that can be used as general tools in different space-efficient algorithms are introduced and employed within our algorithms. In particular, we give an almost-optimal algorithm for finding the closest pair among a set of n points that runs in O(n^2 /s + n * lg s) time. We also give a simple algorithm to enumerate the intersections of n line segments that runs in O((n^2 /s^{2/3}) * lg s + k) time, where k is the number of intersections. The counting version can be solved in O((n^2/s^{2/3}) * lg s) time. When the segments are axis-parallel, we give an O((n^2/s) * lg^{4/3} s + n^{4/3} * lg^{1/3} n)-time algorithm that counts the intersections and an O((n^2/s) * lg s * lg lg s + n * lg s + k)-time algorithm that enumerates the intersections, where k is the number of intersections. We finally present an algorithm that runs in O((n^2 /s + n * lg s) * sqrt{(n/s) * lg n}) time to calculate Klee\u27s measure of axis-parallel rectangles

    On-the-Fly Array Initialization in Less Space

    Get PDF
    We show that for all given n,t,w in {1,2,...} with n<2^w, an array of n entries of w bits each can be represented on a word RAM with a word length of w bits in at most nw+ceil(n(t/(2 w))^t) bits of uninitialized memory to support constant-time initialization of the whole array and O(t)-time reading and writing of individual array entries. At one end of this tradeoff, we achieve initialization and access (i.e., reading and writing) in constant time with nw+ceil(n/w^t) bits for arbitrary fixed t, to be compared with nw+Theta(n) bits for the best previous solution, and at the opposite end, still with constant-time initialization, we support O(log n)-time access with just nw+1 bits, which is optimal for arbitrary access times if the initialization executes fewer than n steps

    Simple 2^f-Color Choice Dictionaries

    Get PDF
    A c-color choice dictionary of size n in N is a fundamental data structure in the development of space-efficient algorithms that stores the colors of n elements and that supports operations to get and change the color of an element as well as an operation choice that returns an arbitrary element of that color. For an integer f>0 and a constant c=2^f, we present a word-RAM algorithm for a c-color choice dictionary of size n that supports all operations above in constant time and uses only nf+1 bits, which is optimal if all operations have to run in o(n/w) time where w is the word size. In addition, we extend our choice dictionary by an operation union without using more space

    Extra Space during Initialization of Succinct Data Structures and Dynamical Initializable Arrays

    Get PDF
    Many succinct data structures on the word RAM require precomputed tables to start operating. Usually, the tables can be constructed in sublinear time. In this time, most of a data structure is not initialized, i.e., there is plenty of unused space allocated for the data structure. We present a general framework to store temporarily extra buffers between the user defined data so that the data can be processed immediately, stored first in the buffers, and then moved into the data structure after finishing the tables. As an application, we apply our framework to Dodis, Patrascu, and Thorup\u27s data structure (STOC 2010) that emulates c-ary memory and to Farzan and Munro\u27s succinct encoding of arbitrary graphs (TCS 2013). We also use our framework to present an in-place dynamical initializable array

    FPT-space Graph Kernelizations

    Full text link
    Let nn be the size of a parametrized problem and kk the parameter. We present a full kernel for Path Contraction and Cluster Editing/Deletion as well as a kernel for Feedback Vertex Set whose sizes are all polynomial in kk, that are computable in polynomial time, and use O(poly(k)logn)O(\rm{poly}(k) \log n) bits. By first executing the new kernelizations and subsequently the best known polynomial-time kernelizations for the problem under consideration, we obtain the best known kernels in polynomial time with O(poly(k)logn)O(\rm{poly}(k) \log n) bits
    corecore