performance - Datastructure : hashmap vs linkedhashmap vs treemap -
i saw there lot of questions differences between these three. tell me if wrong, if sum read:
hashmap
: more efficient in general; o(1) (normal case), o(n) (worst case, bad hash algorithm)linkedhashmap
: maintains insertion order of elements, take more memory hashmaptreemap
: maintains elements sorted, o(log(n)) (when balanced)
my question : why need maintain insertion order or elements sorted, if @ end performance insert, lookup.. better hashmap
?
we need main insertion order because need insertion order solve problem @ hand. sounds bit tautological, that's pretty reason. data ordered benefits random access.
likewise sorting. gives way find "next" or "previous" item cheaply, while still being reasonably efficient arbitrary lookup. 1 example approximate lookups, say, know entry you're looking starts foo
don't know rest of key is.
hashmap exists make things faster , simpler (no concept of order) when don't need of these operations, exact lookup.
Comments
Post a Comment