bktrees: A set data structure with approximate searching

[ bsd3, data-structures, library ] [ Propose Tags ]

Burkhard-Keller trees provide an implementation of sets which apart from the ordinary operations also has an approximate member search, allowing you to search for elements that are of a certain distance from the element you are searching for.

[Skip to Readme]


Automatic Flags

Choose the new smaller, split-up base package.


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.1, 0.1.1, 0.1.2, 0.1.3, 0.2, 0.2.1, 0.2.2, 0.3, 0.3.1
Dependencies array, base (<5), containers [details]
License BSD-3-Clause
Author Josef Svenningsson
Maintainer josef.svenningsson@gmail.com
Category Data Structures
Source repo head: darcs get http://patch-tag.com/r/josef/bktrees
Uploaded by JosefSvenningsson at 2010-11-22T23:23:44Z
Distributions NixOS:0.3.1
Reverse Dependencies 2 direct, 3 indirect [details]
Downloads 16778 total (23 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for bktrees-0.3.1

[back to package description]
This is a module I hacked together quickly after having read the following
blog post:

I thought the data structure sounded cool so I thought it would be an 
interesting excerise to implement it. 

BK-trees can apparently perform very good in some circumstances. The 
paper "Fast Approximate String Matching in a Dictionary" (Baeza-Yates, 
Navarro 1998) recommends them over other structures for doing 
approximate search.

The original paper can be found here:

Henning Günter <h.guenther@tu-bs.de> generously supplied two algorithms for
computing the levenshtein edit distance. The better one of the two is used in
the list instance for the Metric class.