Skip to content

Commit

Permalink
Updated README.md.
Browse files Browse the repository at this point in the history
  • Loading branch information
cantsin committed Nov 23, 2014
1 parent d5ed863 commit 0eade26
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
# fsharp-finger-trees
# Finger Trees in F#

An implementation of a 2-3 finger trees data structure in F# (without laziness).

A finger tree is a data structure with first-order nested types using monoids and reductions (via generics/parametric polymorphism). The reference paper used was [Finger trees - a simple general-purpose data structure (Hinze, Paterson)](reference/Finger trees - a simple general-purpose data structure (Hinze, Paterson).pdf).
A finger tree is a data structure with first-order nested types using monoids and reductions (via generics/parametric polymorphism). The reference paper used was [Finger trees - a simple general-purpose data structure (Hinze, Paterson)](https://github.com/cantsin/fsharp-finger-trees/blob/master/reference/Finger%20trees%20-%20a%20simple%20general-purpose%20data%20structure%20(Hinze,%20Paterson).pdf?raw=true).

Implementations on top of this finger tree structure include:

- random access sequence
- a priority queue
- an ordered sequence
- an interval tree
- random access sequences
- priority queues
- ordered sequences
- interval trees

Performance:

Expand All @@ -21,4 +21,4 @@ Performance:
- (priority queue) find all: O(m * log(n/m))
- (ordered sequences) merge: O(m * log(n/m)); n and m are the lengths of the longer and shorter sequences

This library is feature complete, with a testing framework, but has not been optimized for speed (specific implementations would probably be faster).
This library is feature complete, with some tests, but has not been optimized for speed (specific implementations would probably be faster).

0 comments on commit 0eade26

Please sign in to comment.