Strictly In-Place Algorithms for Permuting and Inverting Permutations

  title={Strictly In-Place Algorithms for Permuting and Inverting Permutations},
  author={B. Dudek and Pawel Gawrychowski and Karol Pokorski},
We revisit the problem of permuting an array of length n according to a given permutation in place, that is, using only a small number of bits of extra storage. Fich, Munro and Poblete [FOCS 1990, SICOMP 1995] obtained an elegant O(n logn)-time algorithm using only O(log n) bits of extra space for this basic problem by designing a procedure that scans the permutation and outputs exactly one element from each of its cycles. However, in the strict sense in place should be understood as using only… Expand


Permuting in Place
The goal is to perform the permutation quickly using only a polylogarithmic number of bits of extra storage, and the main result is an algorithm whose worst case running time is $O(n \log n)$ and that uses additional $\log n-bit words of memory. Expand
Raising Permutations to Powers in Place
An algorithm for inverting permutations that uses O(lg^2 n) additional bits and runs in O(n lg n) worst case time and is generalized to the situation in which the permutation is to be replaced by its kth power. Expand
An in-place, subquadratic algorithm for permutation inversion
A deterministic algorithm that runs in $O(n^{3/2})$ time is presented, and the time complexity can be improved using randomization, but this only improves the expected, not the pessimistic running time. Expand
An O(n log n) Unidirectional Distributed Algorithm for Extrema Finding in a Circle
Algorithms, which given a circular arrangement of n uniquely numbered processes, determine the maximum number in a distributive manner, disprove Hirschberg and Sinclair's conjecture that O ( n 2 ) is a lower bound on the number of messages passed in undirectional algorithms. Expand
Finding median in read-only memory on integer input
It is shown that faster selection algorithms in read-only memory are possible if the input is a sequence of integers and an O ( n ) -time algorithm for finding an approximate median using O ( lg e ? U ) storage cells is described. Expand
Sparse Suffix Tree Construction in Optimal Time and Space
A linear-time Monte Carlo algorithm is designed for sparse suffix tree construction, and this algorithm is complemented with a deterministic verification procedure that improves upon the bound of O(n log b) obtained by I et al. Expand
Optimal time-space trade-offs for sorting
  • J. Pagter, Theis Rauhe
  • Mathematics, Computer Science
  • Proceedings 39th Annual Symposium on Foundations of Computer Science (Cat. No.98CB36280)
  • 1998
The main contribution of this paper is a comparison based sorting algorithm which closes the gap by meeting the lower bound of Beame and the time-space product O(n/sup 2/) upper bound holds for the full range of space bounds between log n and n/log n. Expand
Symmetry breaking in distributed networks
Probabilistic algorithms are proposed to overcome the difficulty of designing a ring of n processors such that they will be able to choose a leader by sending messages along the ring, if the processors are indistinguishable. Expand
Selection from Read-Only Memory and Sorting with Minimum Data Movement
This work considers the scenario in which the data resides in an array of read-only memory and hence the elements cannot be moved within the array, and develops efficient selection algorithms using very little extra space. Expand
Cell probe lower bounds for succinct data structures
A new technique is developed for proving lower bounds for succinct data structures, where the redundancy in the storage can be small compared to the information-theoretic minimum, and the first insight into such problems is provided. Expand