set和迭代器失效总结
set 的相关知识点:重点是 去重 和 排序 !!! 默认按照 升序 排列!!! set 的常见操作: 1. 定义:set<数据类型>name; 2. 与map不同,count使用来 判别一个元素是否存在在set中 name.count(x); 3. name.insert(x); 4. name.erase(x);//插入和删除都要注意迭代器失效!!! erase函数返回被删除元素的下一个元素的迭代器。 erase(iterator) ,删除定位器iterator指向的值 erase(first,second),删除定位器first和second之间的值 erase(key_value),删除键值key_value的值 5. name.size(); 1. http://acm.nefu.edu.cn/contestShow.php 第一点要设置集合数组!!! 第二点找两个集合中相同数目的个数的方法: int k=0; for(set::iterator it=vis[num1].begin(); it!=vis[num1].end(); it++) if(vis[num2].count(*it)) k++; # include <bits/stdc++.h> using namespace std ; set < int > vis [ 52 ] ; int main ( )