Abstract
We present a purely functional implementation of search trees that requires O(logn) time for search and update operations and supports the join of two trees in worst case constant time. Hence, we solve an open problem posed by Kaplan and Tarjan as to whether it is possible to envisage a data structure supporting simultaneously the join operation in O(1) time and the search and update operations in O(logn) time.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Bent, S., Sleator, D., Tarjan, R.: Biased Search Trees. SIAM Journal of Computing 14, 545–568 (1985)
Brodal, G.S.: Partially Persistent Data Structures of Bounded Degree with Constant Update Time. Nordic Journal of Computing 3(3), 238–255 (1996)
Brodal, G.S., Okasaki, C.: Optimal Purely Functional Priority Queues. Journal of Functional Programming 6(6), 839–857 (1996)
Buchsbaum, A., Tarjan, R.E.: Confluently persistent deques via data structural bootstrapping. Journal of Algorithms 18, 513–547 (1995)
Dietz, P.F.: Fully Persistent Arrays. In: Dehne, F., Santoro, N., Sack, J.-R. (eds.) WADS 1989. LNCS, vol. 382, pp. 67–74. Springer, Heidelberg (1989)
Dietz, P., Raman, R.: Persistence. Amortization and Randomization. In: Proc. of the 2nd ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 78–88 (1991)
Driscoll, J.R., Sarnak, N., Sleator, D., Tarjan, R.E.: Making Data Structures Persistent. Journal of Computer and System Sciences 38(1), 86–124 (1989)
Driscoll, J.R., Sleator, D., Tarjan, R.E.: Fully Persistent Lists with Catenation. Journal of the ACM 41(5), 943–959 (1994)
Fiat, A., Kaplan, H.: Making Data Structures Confluently Persistent. Journal of Algorithms 48(1), 16–58 (2003)
Kaplan, H.: Persistent Data Structures. In: Mehta, D., Sahni, S. (eds.) Handbook of Data Structures. CRC Press, Boca Raton (2004)
Kaplan, H., Okasaki, C., Tarjan, R.E.: Simple Confluently Persistent Catenable Lists. SIAM Journal of Computing 30(3), 965–977 (2000)
Kaplan, H., Tarjan, R.E.: Purely Functional, Real-Time Deques with Catenation. Journal of the ACM 46(5), 577–603 (1999)
Kaplan, H., Tarjan, R.E.: Purely Functional Representations of Catenable Sorted Lists. In: Proc. of the 28th Annual ACM Symposium on Theory of Computing (STOC), pp. 202–211 (1996)
Kaplan, H., Tarjan, R.E.: Persistent Lists with Catenation via Recursive Slow-down. In: Proc. of the 27th Annual ACM Symposium on Theory of Computing, pp. 93–102 (1995)
Mehlhorn, K.: Data Structures and Algorithms 1: Sorting and Searching. In: EATCS Monographs on Theoretical Computer Science. Springer, Heidelberg (1984)
Okasaki, C.: Purely Functional Data Structures. Cambridge University Press, Cambridge (1998)
Okasaki, C.: Purely Functional Random-Access Lists. In: Conf. on Functional Programming Languages and Computer Architecture (FPCA), pp. 86–95 (1995)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Brodal, G.S., Makris, C., Tsichlas, K. (2006). Purely Functional Worst Case Constant Time Catenable Sorted Lists. In: Azar, Y., Erlebach, T. (eds) Algorithms – ESA 2006. ESA 2006. Lecture Notes in Computer Science, vol 4168. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11841036_18
Download citation
DOI: https://doi.org/10.1007/11841036_18
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-38875-3
Online ISBN: 978-3-540-38876-0
eBook Packages: Computer ScienceComputer Science (R0)