Speed of string += string
Carl Banks
imbosol-1050195048 at aerojockey.com
Sat Apr 12 21:05:11 EDT 2003
Roy Smith wrote:
> As another example, I can guess that Python dictionaries work like STL
> maps on the inside, but that would be just a guess.
And, it turns out, a poor one.
> Is inserting an
> element logN?
Constant.
> Is keys() linear?
Yes, but unlike STL map, the keys aren't sorted. If you want sorted
keys, you'd have to also perform an O(N log N) sort.
> Is del on an element logN?
Constant.
> Is
> has_key() logN?
Constant.
> Those would be my guesses. But they're just guesses.
STL map is a binary tree. Python dict's are hash tables. I think
getting a sorted list of keys is the only order-of-magnitude advantage
a binary tree has over a hash.
--
CARL BANKS
More information about the Python-list
mailing list