[Python-Dev] Proposal: add odict to collections

zooko zooko at zooko.com
Mon Jun 16 00:02:12 CEST 2008


On Jun 15, 2008, at 12:20 PM, zooko wrote:
> So, it would be easy to change those two behaviors in order to use 
> this implementation. There are actually three implementations in 
> that file: one that is asymptotically O(1) for all operations 
> (using a double-linked list woven into the values of the dict), and 
> one that uses a Python list to hold the order, so it is faster for 
> small enough dicts.

P.S. I didn't mean to fall for the common misunderstanding that hash 
table operations are O(1). What I should have written is that my 
ordered dict technique *adds* only O(1) time to the time of the dict 
on which it is built.
As to the question of how important or common this data structure is, 
I have to admit that while I implemented this one and used it several 
times (always exclusively for LRU caching), I currently don't use it 
for anything. Nowadays I try to avoid doing transparent caching 
(such as LRU caches are often used for) in favor of explicit 
management of the resource.
Regards,
Zooko


More information about the Python-Dev mailing list

AltStyle によって変換されたページ (->オリジナル) /