Space–Time Trade-offs for Stack-Based Algorithms

Luis Barba, Matias Korman, Stefan Langerman, Kunihiko Sadakane, Rodrigo I. Silveira

Research output: Contribution to journalArticlepeer-review

23 Citations (Scopus)


In memory-constrained algorithms, access to the input is restricted to be read-only, and the number of extra variables that the algorithm can use is bounded. In this paper we introduce the compressed stack technique, a method that allows to transform algorithms whose main memory consumption takes the form of a stack into memory-constrained algorithms. Given an algorithm $$\mathcal {A}$$A that runs in $$O(n)$$O(n) time using a stack of length Θ(n), we can modify it so that it runs in O(n2logn/2s) time using a workspace of $$O(s)$$O(s) variables (for any s∈o(logn)) or O(n1+1/logp) time using O(plogpn) variables (for any 2≤p≤n). 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, a 1-dimensional pyramid approximation of a 1-dimensional vector, and the visibility profile of a point inside a simple polygon. Our approach improves or matches up to a O(logn) factor the running time of the best-known results for these problems in constant-workspace models (when they exist), and gives a 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.

Original languageEnglish
Pages (from-to)1097-1129
Number of pages33
Issue number4
Publication statusPublished - 2015 Aug 19
Externally publishedYes


  • Constant workspace
  • Memory constrained algorithms
  • Space–time trade-off
  • Stack algorithms

ASJC Scopus subject areas

  • Computer Science(all)
  • Computer Science Applications
  • Applied Mathematics


Dive into the research topics of 'Space–Time Trade-offs for Stack-Based Algorithms'. Together they form a unique fingerprint.

Cite this