map和unordered_map
1.底层结构不同:map——>红黑树,unordered_map——>哈希桶
2.使用场景:期望有序则用map,期望效率高则用unordered_map
3.效率:map低——>O(logN),unordered_map高——>O(1)
4.是否扩容:map不需要扩容,unordered_map需要进行扩容——>降低哈希冲突
5.空间利用率:map高,unordered_map低
6.插入方式:map:以红黑树方式插入 unordered_map:按照开散列方式插入
7.迭代器操作:map按红黑树中序遍历进行操作 双向++/-- unordered_map按逐个桶往后遍历 单向++
8.是否关于key有序:map有序,unordered_map无序
9.map是C++98,unordered_mapC++11