map和set都属于STL容器之一。
他们的共同点是底层实现都是红黑树,key值唯一。
区别在于set的形式是set<key>set1,map的形式是map<key,value>map1
map的每个元素都是pair类型
一、set的常用操作
1、元素的插入insert
void Testset()
{
set<int> testset;
//int arr[] = {1,9,8,55,23,22,81,3,6,0};
//for(size_t i = 0 ;i < sizeof(arr)/sizeof(arr[0]);++i)
//{
// testset.insert(arr[i]);
//}
testset.insert(9);
testset.insert(8);
testset.insert(7);
testset.insert(6);
testset.insert(6);
set<int>::iterator it= testset.begin();//使用迭代器输出
while(it!= testset.end())
{
cout<<*it<<" ";
++it;
}
cout<<endl;
};
二、map的常用操作
1、元素的插入insert
void TestMap()
{
map<string, int> m1;
m1.insert(pair<string, int>("a", 1));
m1.insert(pair<string, int>("b", 3));
m1.insert(pair<string, int>("aa", 7));
m1.insert(pair<string, int>("bb", 1));
map<string,int>::iterator it1 = m1.begin();
while (it1!=m1.end())
{
cout<<it1->first<<":"<<it1->second<<endl;
++it1;
}
string strsp[]={"sort","set","map","sort","map"};
}