#include <iostream> #include <set> using namespace std; int main() { char str[100] = { 0 }; cin.getline(str, sizeof(str)); // 利用set去除字符串中重复的字符 set<char> s; int i; //将字符串添加进s中 while(str[i]){ s.insert(str[i]); i++; } //迭代器遍历输出 for(auto...
set<int> s;// set插入数据只有insert方式s.insert(2); s.insert(4); s.insert(2); s.insert(3); s.insert(1);// 不能插入重复的值,就算重复插入,也只保留一份数据// 元素在插入时自动被排序,默认按照升序printSet(s);// 拷贝构造函数set<int>s2(s);printSet(s2);//赋值set<int> s3; s3 =...
set<int> Demo; int main(){ pair<set<int>::iterator,bool> DemoPair=Demo.insert(1); printf("Insert %d\n",*DemoPair.first); printf(DemoPair.second==true?"Succeed\n":"Failed\n"); DemoPair=Demo.insert(1); printf("Insert %d\n",*DemoPair.first); printf(DemoPair.second==true?"Succe...
insert(20); s1.insert(10); s1.insert(30); s1.insert(40); //遍历容器 //set容器特:所有元素插入时自动排序 //set容器不允许插入重复值 printSet(s1); //拷贝构造 set<int>s2(s1) ; printSet(s2); //赋值 set<int>s3; s3 = s2; printSet(s3); } int main() { test01(); } 结果 3...
查找到的重复元素 : 2 Press any key to continue . . . 1. 2. 3. 代码示例 : #include "iostream" using namespace std; #include <vector> #include <algorithm> #include "functional" int main() { // 创建一个 set 集合容器 vector<int> myVector; ...
std::set<int>mySet;autoresult=mySet.insert(3);// 尝试插入元素 3if(result.second){std::cout<<"Insertion successful.\n";}else{std::cout<<"Element already exists.\n";} 使用emplace方法:类似于insert,但是它通过原地构造元素,可能更高效,因为它避免了临时对象的创建和拷贝。例如: ...
s.insert(1); s.insert(1); cout<<s.count(1)<<endl; cout<<s.count(2)<<endl; 1. 2. 3. 4. 5. 6. count用来计数某个key值出现过的次数,由于set和map一样,都是不允许重复数据的出现,所以count的返回值只能是0或1(集合中存在或者不存在)。
insert(50); s2.insert(30); for (set<int, MyCompare>::iterator it = s2.begin(); it != s2.end(); it++) { cout << *it << " "; } cout << endl; } int main() { test01(); system("pause"); return 0; } 输出: 需要注意的是vs2019重载operator()需要加const,不然会报错。
1.2.6 set的使用举例 #include<iostream>using namespace std;#include <set>void TestSet(){// 用数组array中的元素构造setint array[] = { 1, 3, 5, 7, 9, 2, 4, 6, 8, 0, 1, 3, 5, 7, 9, 2, 4, 6, 8, 0 };set<int> s;for (auto e : array)s.insert(e);cout << s....