容器 - unordered_map

  • unordered_map是C++ Boost库中的内容,这里的unordered指的是散列式的存储方式。
  • unordered库提供了两个散列映射表,unordered_map和unordered_multimap。
  • 利用散列表代替了二叉树的实现,模板参数中多了散列计算函数。
  • unordered_map和unordered_multimap查找速度是O(n)。

  • unordered_map属于关联式容器,采用std::pair保存key-value形式的数据。用法与map一致。
  • 特别的是,STL中的map因为是“有序”的二叉树存储,所以对key值需要有大小的判断,当使用内置类型时,无需重载operator < ;但是用用户自定义类型的话,就需要重载!
  • unoredered_map全程使用不需要比较元素的key值的大小,但是,对于元素的==要有判断,又因为需要使用hash映射,所以,对于非内部类型,需要程序员为其定义这二者的内容,对于内部类型,就不需要了。
     

Guess you like

Origin blog.csdn.net/qq_38844835/article/details/119744586