About

This program implements a derivative of BK-Tree data structure described in "Some Approaches to Best-Match File Searching" paper of W. A. Burkhard and R. M. Keller. For more information about the paper, see

How this table should be interpreted? The lower the difference between the third and fourth columns, the less redundant node visit performed. And the stability of this difference (which means no fluctuations in the difference) indicates the stability of the convergence.

AVERAGE-CHILDREN-COUNT (TREE)

Return a list of `SEARCH-RESULT' instances built from `TREE' and its children
whose value is no more distant from `VALUE' than `THRESHOLD', using `METRIC' to
measure the distance.
If `LIMIT' is non-NIL, given number of first found results will be
returned.
If `ORDERED-RESULTS' is non-NIL, returned results will be ordered according to
their distances from `VALUES'.
If `ORDERED-TRAVERSAL' is non-NIL, candidates in a level (e.g. children of a
validated node) will be traversed in sorted order according to the absolute
difference between the parent distance and child distance -- the (probably) more
similar is first.
`HAIRY-SEARCH-VALUE' is a feature rich and hence slower derivative of
`SEARCH-VALUE'. For simple query patterns, consider using `SEARCH-VALUE'.

PRINT-TREE (TREE &KEY (STREAM *STANDARD-OUTPUT*) (DEPTH 0))

Return a list of `SEARCH-RESULT' instances built from `TREE' and its children
whose value is no more distant from `VALUE' than `THRESHOLD', using `METRIC' to
measure the distance.
If `ORDERED-RESULTS' is non-NIL, collected results will be sorted according to
their distances from `VALUE'.