Abstract
We discuss the complexity of sorting and searching from the following point of view: The n keys are binary strings (or integers) of length w and the employed computer has word size w. In this natural setting, and assuming that a traditional instruction set is available, a comparison-based algorithm is not the obvious choice. Indeed, the comparison-based algorithms are suboptimal in this model.
Rather than going into technical details, this invited talk aims at presenting some basic ideas. For more details, we give references to the literature. The following will be discussed:
-
1.
Deterministic data structures and algorithms that use superlinear space
-
tries are used to decrease key length;
-
the resulting short keys are handled efficiently by packing them tightly. With these methods, the worst-case cost of sorting is O(n log log n) and the worst-case cost of searching is O(V√logn). (Tries use super-linear space, but with randomization, i.e. hash coding, the space can be reduced to linear).
-
2.
Deterministic data structures and algorithms that use linear space
-
the fusion tree; with this data structure the worst-case cost of sorting is O(n log n/log log n) and the amortized cost of searching is O (log n/log log n).
-
a new data structure, the exponential search tree; the bounds on deterministic sorting and searching in linear space are improved to O(n√logn) and O(√log n), respectively.
Preview
Unable to display preview. Download preview PDF.
References
S. Albers and T. Hagerup. Improved parallel integer sorting without concurrent writing. In Proc. 3rd ACM-SIAM SODA, pages 463–472, 1992.
A. Andersson. Faster deterministic sorting and searching in linear space. Tech. report LU-CS-TR:95-160, Lund University, 1995.
A. Andersson. Sublogarithmic searching without multiplications. In Proc. 36th IEEE Symposium on Foundations of Computer Science, pages 655–663. ACM Press, 1995.
A. Andersson, T. Hagerup, S. Nilsson, and R. Raman. Sorting in linear time? In Proceedings 27th ACM Symposium on Theory of Computing, pages 427–436. ACM Press, 1995.
A. Andersson, P.B. Miltersen, and M. Thorup. Manuscript. In preparation, 1996.
A. Andersson and S. Nilsson. A new efficient radix sort. In Proc. 35th Annual IEEE Symposium on Foundations of Computer Science, pages 714–721. IEEE Computer Society Press, 1994.
K. E. Batcher. Sorting networks and their applications. In Proceedings of the AFIPS Spring Joint Computer Conference, pages 307–314, 1968. Volume 32.
P. Beame and F. Fich. Manuscript. 1996.
P. Beame and J. Håstad. Optimal bounds for decision problems on the CRCW PRAM. Journal of the ACM, 36(3):643–670, 1989.
J. L. Carter and M. N. Wegman. Universal classes of hash functions. Journal of Computer and System Sciences, 18:143–154, 1979.
M. L. Fredman, J. Komlós, and E. Szemerédi. Storing a sparse table with O(1) worst case access time. Journal of the ACM, 31(3):538–544, 1984.
M. L. Fredman and D. E. Willard. Surpassing the information theoretic bound with fusion trees. J. Comput. Syst. Sci., 47:424–436, 1994.
J. L. Hennessy and D. A. Patterson. Computer Organization and Design: The Hardware/Software Interface. Morgan Kaufmann Publ., San Mateo, CA, 1994.
D. Kirkpatrick and S. Reisch. Upper bounds for sorting integers on random access machines. Theoretical Computer Science, 28:263–276, 1984.
P. B. Miltersen. Personal communication.
P. B. Miltersen. Lower bounds for union-split-find related problems on random access machines. In Proc. 26th Ann. ACM Symp. Theory of Computing, pages 625–634, 1994.
W. J. Paul and J. Simon. Decision trees and random access machines. In Logic and Algorithmic: An International Symposium Held in Honour of Ernst Specker, pages 331–340. L'Enseignement Mathématique, Université de Genève, 1982.
R. Raman. Improved data structures for predecessor queries in integer sets, manuscript, 1995.
M. Thorup. On RAM priority queues. In Proc. 7th Annual ACM-SIAM Symposium on Discrete Algorithms, 1996.
P. van Emde Boas. Preserving order in a forest in less than logarithmic time. In Proceedings of the 16th Annual IEEE Symposium on Foundations of Computer Science, pages 75–84, 1975.
P. van Emde Boas. Preserving order in a forest in less than logarithmic time and linear space. Information Processing Letters, 6(3):80–82, 1977.
P. van Emde Boas, R. Kaas, and E. Zijlstra. Design and implementation of an efficient priority queue. Math. Syst. Theory, 10:99–127, 1977.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Andersson, A. (1996). Sorting and searching revisted. In: Karlsson, R., Lingas, A. (eds) Algorithm Theory — SWAT'96. SWAT 1996. Lecture Notes in Computer Science, vol 1097. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61422-2_131
Download citation
DOI: https://doi.org/10.1007/3-540-61422-2_131
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61422-7
Online ISBN: 978-3-540-68529-6
eBook Packages: Springer Book Archive