On May 19, 2011, at 1:21 PM, Mike Belopuhov <m...@crypt.org.ru> wrote:
> On Thu, May 19, 2011 at 7:12 PM, Thordur Bjornsson <t...@openbsd.org> wrote: >> On Thu, May 19, 2011 at 07:52:44PM +0300, Michael Pounov wrote: >>> Add AVL tree implementation and merge few RB tree related macros. >>> >>> If you have comments or any claims, please send me feedback >>> and I will fix them. >> cool. but tech@ removes attachments, send your diffs inline. >> >> I'm assuming you implemented this as a macro a la RB/SPAY in >> tree.h; >> >> That being said, there is already an AVL tree implementation >> floating around, that's "not macros". >> >> I've been beating on it (with some of the RB trees diffs we >> have in the kernel switched over) for some time, and hopefully >> it will be committable soon. >> > > what do you need it for? it's pretty much the same as r/b tree. > do you think that lookup speed up is considerable? > same questions apply to Michael. >> >> I wrote an AVL implementation because I needed a slightly different lookup function at the time. Also I don't like the tree macros interface, straight C is much nicer. The choice of AVL over RB was just because I found the algorithm easier. I see no need to have both trees with the same interface.