Everything About ___
Live briefing

Everything about Finger tree

Purely functional data structure

In computer science, a finger tree is a purely functional data structure that can be used to efficiently implement other functional data structures. A finger tree gives amortized constant time access to the "fingers" (leaves) of the tree, which is where data is stored, and concatenation and splitting logarithmic time in the size of the smaller piece. It also stores in each internal node the result of applying some associative operation to its descendants. This "summary" data stored in the internal nodes can be used to provide the functionality of data structures other than trees. Wikipedia →

🧭 Start here: a 6-step reading path

  1. Read the overview: Finger treeA 5-minute orientation
  2. Skim a recent paper: Global field observations of tree die-off reveal hotter-drought fingerprint for Earth’s forestsInfluential work since 2022
  3. Pick up a classic book: Les trois MousquetairesThe most-reprinted book on the subject
  4. Read the landmark paper: A constant update time finger search treeCited 17 times
  5. Go sideways: Splay treeA closely related topic
  6. Go sideways: Disjoint-set data structureA closely related topic

📖 Definitions

Noun A purely functional tree-like data structure offering amortized constant time access to its "fingers" (leaves), used for the efficient implementation of other purely functional data structures.

🏆 Landmark papers (most cited)

🆕 Influential since 2022

📚 Books worth reading

Ranked by number of editions on Open Library, a rough measure of how lasting a book is.

🔗 Related topics