zoukankan      html  css  js  c++  java
  • STL中map的使用

    知识点

    C++中map提供的是一种键值对容器,里面的数据都是成对出现的。map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的。

    1.当使用数组的方式遍历map时,下标是从1开始。

    2.用find()函数来定位数据出现位置,它返回的一个迭代器,当数据出现时,它返回数据所在位置的迭代器,如果map中没有要查找的数据,它返回的迭代器等于end()函数返回的迭代器。获取的迭代器iterator数据类型是一个std::pair对象,包括两个数据 iterator->firstiterator->second分别代表关键字和存储的数据。

    3.map中的swap不是一个容器中的元素交换,而是两个容器所有元素的交换。

    4.map是一类关联式容器。它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响。对于迭代器来说,可以修改实值,而不能修改key。

    5.map底层由红黑数实现,所以可以根据key值快速查找记录,查找的复杂度基本是Log(N)

    更多:
    1.C++中的STL中map用法详解
    2.C++ Map常见用法说明

    感谢阅读,如有问题,请批评指正,谢谢。
  • 相关阅读:
    CF732 F Tourist Reform——边双连通分量
    CF36 E Two Paths——欧拉(回)路
    最小生成树()
    Bellman-Ford算法
    SPFA算法
    归并排序(Merge_Sort)
    并查集
    int(3)与int(11)的区别
    mysql应该看的blog
    mysql建立索引
  • 原文地址:https://www.cnblogs.com/clwsec/p/12260907.html
Copyright © 2011-2022 走看看