Ternary search trees added to TODO
Russ Allbery
rra at stanford.edu
Wed May 9 13:05:09 UTC 2001
Andrew McNamara <andrewm at connect.com.au> writes:
>> That's not clear; I'd like to at least try it. A lookup in a hash
>> table is linear in the length of the key, so it's O(k) vs. O(lg n + k),
>> which makes the performance difference a little harder to judge. Plus
>> unsuccessful lookup is frequently much faster, and the operation at
>> each character of the key can be quite a bit faster; it depends on
>> whether pointer chasing is faster than the mathematical operations the
>> hash function is performing.
> The pointer chasing could easily be more expensive than the hash
> function as it will touch more cache lines, potentially faulting in more
> pages (the locality of reference is considerably worse).
True.
(The other place where TSTs may come in handy is with the configuration
file parsing stuff; in that case, there will be a *lot* of failed lookups
in the common case, and more configuration parameters distinguish by the
first few characters than newsgroup names.)
> Since we're on the subject, have you considered splay trees?
No, feel free to plug them! I'm not being as proactive about seeking out
new data structures as I should be and therefore tend to only hear about
the relative merits of them if they come up on mailing lists I follow.
--
Russ Allbery (rra at stanford.edu) <http://www.eyrie.org/~eagle/>
More information about the inn-workers
mailing list