Finger Trees - Andrew Gibiansky
In this notebook, we'll look at finger trees, a general purpose functional data structure developed in the paper by Hinze and Patterson. Finger trees provide a functional sequence data structure, which provides amortized constant-time access and appending to the front and end of the sequence, as well as logarithmic time concatenation and random access. In addition to good asymptotic runtime bounds, the data structure turns out to be incredibly flexible: when combined with monoidal tags on the elements, finger trees may be used to implement efficient random-access sequences, ordered sequences, interval trees, and priority queues.
Read full article from Finger Trees - Andrew Gibiansky
No comments:
Post a Comment