Skip to main content
×
Home
    • Aa
    • Aa
  • Get access
    Check if you have access via personal or institutional login
  • Cited by 12
  • Cited by
    This article has been cited by the following publications. This list is generated based on data provided by CrossRef.

    Charguéraud, Arthur 2016. Proceedings of the 5th ACM SIGPLAN Conference on Certified Programs and Proofs - CPP 2016. p. 3.

    Lammich, Peter 2016. Proceedings of the 5th ACM SIGPLAN Conference on Certified Programs and Proofs - CPP 2016. p. 27.

    Jaskelioff, Mauro and Rivas, Exequiel 2015. Proceedings of the 20th ACM SIGPLAN International Conference on Functional Programming - ICFP 2015. p. 355.

    Jaskelioff, Mauro and Rivas, Exequiel 2015. Functional pearl: a smart view on datatypes. ACM SIGPLAN Notices, Vol. 50, Issue. 9, p. 355.


    Leather, Sean Jeuring, Johan Löh, Andres and Schuur, Bram 2015. Type-changing rewriting and semantics-preserving transformation. Science of Computer Programming, Vol. 112, p. 145.


    Stucki, Nicolas Rompf, Tiark Ureche, Vlad and Bagwell, Phil 2015. RRB vector: a practical general purpose immutable sequence. ACM SIGPLAN Notices, Vol. 50, Issue. 9, p. 342.


    Stucki, Nicolas Rompf, Tiark Ureche, Vlad and Bagwell, Phil 2015. Proceedings of the 20th ACM SIGPLAN International Conference on Functional Programming - ICFP 2015. p. 342.

    Ploeg, Atze van der and Kiselyov, Oleg 2014. Reflection without remorse. ACM SIGPLAN Notices, Vol. 49, Issue. 12, p. 133.


    Mattsen, Sven Cuoq, Pascal and Schupp, Sibylle 2013. 2013 IEEE 13th International Working Conference on Source Code Analysis and Manipulation (SCAM). p. 63.

    BERGSTROM, LARS FLUET, MATTHEW RAINEY, MIKE REPPY, JOHN and SHAW, ADAM 2012. Lazy tree splitting. Journal of Functional Programming, Vol. 22, Issue. 4-5, p. 382.


    Venkatachalam, Balaji Apple, Jim St. John, Katherine and Gusfield, Daniel 2010. Untangling Tanglegrams: Comparing Trees by Their Drawings. IEEE/ACM Transactions on Computational Biology and Bioinformatics, Vol. 7, Issue. 4, p. 588.


    HINZE, RALF 2009. Purely Functional 1-2 Brother Trees. Journal of Functional Programming, Vol. 19, Issue. 06, p. 633.


    ×

Finger trees: a simple general-purpose data structure

  • RALF HINZE (a1) and ROSS PATERSON (a2)
  • DOI: http://dx.doi.org/10.1017/S0956796805005769
  • Published online: 16 November 2005
Abstract

We introduce 2-3 finger trees, a functional representation of persistent sequences supporting access to the ends in amortized constant time, and concatenation and splitting in time logarithmic in the size of the smaller piece. Representations achieving these bounds have appeared previously, but 2-3 finger trees are much simpler, as are the operations on them. Further, by defining the split operation in a general form, we obtain a general purpose data structure that can serve as a sequence, priority queue, search tree, priority search queue and more.

Copyright
Recommend this journal

Email your librarian or administrator to recommend adding this journal to your organisation's collection.

Journal of Functional Programming
  • ISSN: 0956-7968
  • EISSN: 1469-7653
  • URL: /core/journals/journal-of-functional-programming
Please enter your name
Please enter a valid email address
Who would you like to send this to? *
×