欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

STL map

程序员文章站 2024-02-17 15:21:28
...

概述

map映照容器是一种实现了平衡二叉树的数据结构,Map中每个元素都是一个键值对<key,value>,且key值是不能重复的,即每个元素的key值都是唯一的。Map容器可以按key检索

map容器的定义:

map<类型1,类型2>对象名;如:map<string,float> m;其中,类型1是key的类型,类型2是value的类型。

                                                    map<int,vector<int> >m;

查找:

map内的元素能以数组的方式进行访问

例子:

#include<iostream>
#include<map>
using namespace std;
int main(){

    map<int,string>a;
    a[2]="dwd";
    a[5]="dff";
    a[6]="asf";
    a[8]="21";
    a[10]="345";
    a.erase(2);
    for(int i=1;i<=a.size();i++)
        cout<<a[i]<<endl;

    cout<<a.find(5)->first<<a.find(5)->second;

    return 0;
}

二分查找:

.lower_bound(x);           返回第一个大于等于x的数的地址(迭代器)           可用.first和.second访问其key值和value值

.upper_bound(x);           返回第一个大于x的数的地址(迭代器)

如果所有元素都小于x,则返回最后一个下标+1的位置