set和map的简单用法

1set(集合)map(映射)都属于关联类容器
都支持查询一个元素是否存在并能够有效地获取元素。
set集合的元素总是从小到大排列,set集合通过二分查找树实现。它具备以下两个特点:
①:独一无二的元素:不存在两个值相等的元素
②:元素值就是关键字本身
2.#include<set>
  using namespace std;
  set<int>::iterator it;
  int a[]={1,2,3,4,5};
  set<int>s2(a,a+5);
  for(it=s2.begin();it!=s2.end();it++){
    cout<<" "<<*it;
  }
3.lower_bound():返回第一个不小于元素x的迭代器;
  upper——bound():返回第一个大于x的迭代器;
  以上两个函数都可以使用二分法实现。
 具体实现代码可以看这里:http://www.cnblogs.com/TWS-YIFEI/p/5990976.html
1.map也是一种关联容器,也是用来存取数据的,数据的组成包括两部分:数据值和关键字;关键字用来唯一的标识数据元素。 2. map<char,int>:iterator it; map<char,int> first; first['a']=10; for(it=first.begin();it!=first.end();it++){ cout<<(*it).first<<" "<<(*it).second; //first,second分别是关键字和数据值。 }
原文地址:https://www.cnblogs.com/TWS-YIFEI/p/6111849.html