Abstract
We study the problem of determining the complexity of optimal comparison-based in-place sorting when the key length, k, is not a constant. We present the first algorithm for lexicographically sorting n keys in O(nk + n log n) time using O(1) auxiliary data locations, which is simultaneously optimal in time and space.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Andersson, A., Hagerup, T., Håstad, J., Petersson, O.: Tight bounds for searching a sorted array of strings. SIAM Journal on Computing 30(5), 1552–1578 (2001)
Arge, L., Ferragina, P., Grossi, R., Vitter, J.S.: On sorting strings in external memory. In: ACM STOC 1997, pp. 540–548 (1997)
Bender, M.A., Demaine, E.D., Farach-Colton, M.: Cache-oblivious B-trees. In: IEEE FOCS 2000, pp. 399–409 (2000)
Bentley, J.L., Sedgewick, R.: Fast algorithms for sorting and searching strings. In: ACM-SIAM SODA 1997, pp. 360–369 (1997)
Brodal, G.S., Fagerberg, R., Jacob, R.: Cache oblivious search trees via binary trees of small height. In: ACM-SIAM SODA 2002, pp. 39–48 (2002)
Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C.: Introduction to Algorithms. MIT Press, Cambridge (2001)
Franceschini, G.: Proximity mergesort: Optimal in-place sorting in the cache-oblivious model. In: ACM-SIAM SODA 2004, pp. 284–292 (2004)
Franceschini, G.: Sorting stably, in-place, with O(n log n) comparisons and O(n) moves. In: Diekert, V., Durand, B. (eds.) STACS 2005. LNCS, vol. 3404, pp. 629–640. Springer, Heidelberg (2005)
Franceschini, G., Geffert, V.: An In-Place Sorting with O(nlogn) Comparisons and O(n) Moves. In: IEEE FOCS 2003, pp. 242–250 (2003)
Franceschini, G., Grossi, R.: No Sorting? better Searching! In: IEEE FOCS 2004, pp. 491–498 (2004)
Hirschberg, D.S.: A lower worst-case complexity for searching a dictionary. In: Proc. 16th Allerton Conference on Comm., Control, and Computing, pp. 50–53 (1978)
Hirschberg, D.S.: On the complexity of searching a set of vectors. SIAM J. Computing 9(1), 126–129 (1980)
Itai, A., Konheim, A.G., Rodeh, M.: A sparse table implementation of priority queues. In: Even, S., Kariv, O. (eds.) ICALP 1981. LNCS, vol. 115, pp. 417–431. Springer, Heidelberg (1981)
Knuth, D.E.: The Art of Computer Programming III: Sorting and Searching. Addison-Wesley, Reading (1998)
Kosaraju, S.R.: On a multidimensional search problem. In: ACM STOC 1979, pp. 67–73 (1979)
Kronrod, M.A.: Optimal ordering algorithm without operational field. Soviet Math. Dokl. 10, 744–746 (1969)
Lai, T.W., Wood, D.: Implicit selection. In: Karlsson, R., Lingas, A. (eds.) SWAT 1988. LNCS, vol. 318, pp. 14–23. Springer, Heidelberg (1988)
Manber, U., Myers, G.: Suffix arrays: A new method for on-line string searches. SIAM Journal on Computing 22(5), 935–948 (1993)
Munro, J.I.: An implicit data structure supporting insertion, deletion, and search in O(log2 n) time. Journal of Computer and System Sciences 33(1), 66–74 (1986)
Munro, J.I., Raman, V.: Sorting multisets and vectors in-place. In: Dehne, F., Sack, J.-R., Santoro, N. (eds.) WADS 1991. LNCS, vol. 519, pp. 473–480. Springer, Heidelberg (1991)
Salowe, J., Steiger, W.: Simplified stable merging tasks. Journal of Algorithms 8(4), 557–571 (1987)
Willard, D.E.: Maintaining dense sequential files in a dynamic environment. In: ACM STOC 1982, pp. 114–121 (1982)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Franceschini, G., Grossi, R. (2005). Optimal In-place Sorting of Vectors and Records. In: Caires, L., Italiano, G.F., Monteiro, L., Palamidessi, C., Yung, M. (eds) Automata, Languages and Programming. ICALP 2005. Lecture Notes in Computer Science, vol 3580. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11523468_8
Download citation
DOI: https://doi.org/10.1007/11523468_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-27580-0
Online ISBN: 978-3-540-31691-6
eBook Packages: Computer ScienceComputer Science (R0)