32 research outputs found
Space-Time Trade-offs for Stack-Based Algorithms
In memory-constrained algorithms we have read-only access to the input, and
the number of additional variables is limited. In this paper we introduce the
compressed stack technique, a method that allows to transform algorithms whose
space bottleneck is a stack into memory-constrained algorithms. Given an
algorithm \alg\ that runs in O(n) time using variables, we can
modify it so that it runs in time using a workspace of O(s)
variables (for any ) or time using variables (for any ). We also show how the technique
can be applied to solve various geometric problems, namely computing the convex
hull of a simple polygon, a triangulation of a monotone polygon, the shortest
path between two points inside a monotone polygon, 1-dimensional pyramid
approximation of a 1-dimensional vector, and the visibility profile of a point
inside a simple polygon. Our approach exceeds or matches the best-known results
for these problems in constant-workspace models (when they exist), and gives
the first trade-off between the size of the workspace and running time. To the
best of our knowledge, this is the first general framework for obtaining
memory-constrained algorithms
A Time-Space Tradeoff for Triangulations of Points in the Plane
In this paper, we consider time-space trade-offs for reporting a triangulation of points in the plane. The goal is to minimize the amount of working space while keeping the total running time small. We present the first multi-pass algorithm on the problem that returns the edges of a triangulation with their adjacency information. This even improves the previously best known random-access algorithm
Time-Space Trade-Offs for Computing Euclidean Minimum Spanning Trees
In the limited-workspace model, we assume that the input of size lies in
a random access read-only memory. The output has to be reported sequentially,
and it cannot be accessed or modified. In addition, there is a read-write
workspace of words, where is a given parameter.
In a time-space trade-off, we are interested in how the running time of an
algorithm improves as varies from to .
We present a time-space trade-off for computing the Euclidean minimum
spanning tree (EMST) of a set of sites in the plane. We present an
algorithm that computes EMST using time and
words of workspace. Our algorithm uses the fact that EMST is a subgraph of
the bounded-degree relative neighborhood graph of , and applies Kruskal's
MST algorithm on it. To achieve this with limited workspace, we introduce a
compact representation of planar graphs, called an -net which allows us to
manipulate its component structure during the execution of the algorithm
Priority queues and sorting for read-only data
Abstract. We revisit the random-access-machine model in which the input is given on a read-only random-access media, the output is to be produced to a write-only sequential-access media, and in addition there is a limited random-access workspace. The length of the input is N elements, the length of the output is limited by the computation itself, and the capacity of the workspace is O(S + w) bits, where S is a parameter specified by the user and w is the number of bits per machine word. We present a state-of-the-art priority queue-called an adjustable navigation pile-for this model. Under some reasonable assumptions, our priority queue supports minimum and insert in O(1) worst-case time and extract in O(N/S +lg S) worst-case time, where lg N ≤ S ≤ N/ lg N . We also show how to use this data structure to simplify the existing optimal O(N 2 /S + N lg S)-time sorting algorithm for this model