c – 什么时候应该使用unordered_map而不是std :: map

前端之家收集整理的这篇文章主要介绍了c – 什么时候应该使用unordered_map而不是std :: map前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想知道在哪种情况下,我应该使用unordered_map而不是std :: map.

每当我不注意地图中元素的顺序时,都要使用unorderd_map?

解决方法

地图

>通常使用red-black tree实现.
元素被排序.
>相对较小的内存使用(不需要额外的内存用于哈希表).
>相对快速查找:O(log N).

unordered_map

>通常使用hash-table实现.
元素没有排序.
>需要额外的内存来保留哈希表.
>快速查找O(1),但是恒定时间取决于可能相对较慢的hash-function.还要记住,你可以见到Birthday problem.

猜你在找的C&C++相关文章