From: Niklas Holsti <niklas.holsti@tidorum.invalid>
Subject: Re: B-tree performance
Date: Mon, 02 Sep 2013 07:28:57 +0300
Date: 2013-09-02T07:28:57+03:00 [thread overview]
Message-ID: <b8iig8F6irU1@mid.individual.net> (raw)
In-Reply-To: <a5924091-ecc9-4d11-8bb5-30d84204cb15@googlegroups.com>
On 13-09-01 11:38 , Peter Brooks wrote:
> On Sunday, 1 September 2013 10:05:27 UTC+2, Niklas Holsti wrote:
>>
>>
>> If for some reason you want to the keep the hash-table small, although
>> this leads to many collisions, I suppose you could organize the
>> colliding object sets into some kind of keyed containers, for example
>> B-trees, but then you should use the actual key to index these
>> containers, not the hash-value.
>>
> I'm using a tree structure to represent a sparse array because it
> makes inserts and deletes easier and quicker, and cleaner.
But insertion and deletion are simple and fast in the basic hash-table
structure, too, as long as the collision sets are small.
In the traditional hash-table structure, the collision sets are
implemented as unordered linked lists of objects. You can insert or
delete any list entry with a few link changes. If you adjust the size of
the hash table to keep the collision set size bounded by some constant,
insertion and deletions are O(1) on average.
--
Niklas Holsti
Tidorum Ltd
niklas holsti tidorum fi
. @ .
next prev parent reply other threads:[~2013-09-02 4:28 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-31 7:14 B-tree performance Peter Brooks
2013-08-31 15:26 ` Shark8
2013-08-31 15:47 ` Peter Brooks
2013-09-01 4:57 ` Niklas Holsti
2013-09-01 6:05 ` Peter Brooks
2013-09-01 8:05 ` Niklas Holsti
2013-09-01 8:38 ` Peter Brooks
2013-09-02 4:28 ` Niklas Holsti [this message]
2013-09-03 2:15 ` Peter Brooks
2013-09-05 8:25 ` Memory mapping and network file systems (Was: B-tree performance) Jacob Sparre Andersen
2013-09-05 10:12 ` Peter Brooks
2013-09-03 16:14 ` B-tree performance Dan'l Miller
2013-09-03 17:43 ` Peter Brooks
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox