C++ STL系列之 boost:unordered 您所在的位置:网站首页 primeblue和boost区别 C++ STL系列之 boost:unordered

C++ STL系列之 boost:unordered

2024-07-02 13:25| 来源: 网络整理| 查看: 265

C++ STL系列之 boost:unordered_map和 std::map区别详解 (***)

Linux下map hash_map和unordered_map效率比较

boost中的unordered_map使用方法

map和 unordered_map的使用对比(**)

---------------------------------------------------------

当不需要结果排好序时,最好用 unordered_map。但有 hash计算的耗时、即内存占用问题。

按插入排序,和 unordered不是一个概念。

按插入排序也是一种排序,而 unordered不是任何一种规则排序。

=================================

C++ STL系列之 boost:unordered_map和 std::map区别详解 (***)

开发C++时,选择合适的数据结构是一个十分重要的步骤。因此,必须对每一个数据结构的原理及应用场景都有所了解。

boost::unordered_map和 std::map都是一种关联式容器,且原理类似,通过存储key-value键值对,可通过key快速检索到value,并且key是不重复的。但是,它们之间有一些区别,下面将逐一介绍。

排序区别:     map是有序的:按照 operator     map mapper;     mapper.insert(make_pair(0, "Alice"));     mapper[1] = "Bob";     mapper.insert(map::value_type(2, "Candy"));     for (auto &iter : mapper) {         cout     using namespace std;     // 首先创建一个无序 map,它的 key 使用 int 类型,value 使用 string 类型     unordered_map unorderedMap;             // 三种插入新元素的方法,“茴”字有三种写法~     unorderedMap.insert(make_pair(0, "Alice"));     unorderedMap[1] = "Bob";     unorderedMap.insert(unordered_map::value_type(2, "Candy"));       // 对内部元素挨个输出     for (auto iter = unorderedMap.begin(); iter != unorderedMap.end(); iter++) {         cout first


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有