c++ map容器

#include <iostream>

#include <string>

#include <fstream>

#include <vector>

#include <algorithm>

#include <deque>

#include <stack>

#include <queue>

#include <list>

#include <set>

#include <map>

using namespace std;

void printMap(map<int, int> &m)

{

for (map<int, int>::iterator it = m.begin(); it != m.end(); it++)

{

cout << it->first << " " << it->second << endl;

}

}

void test01()

{

map<int, int> m;

m.insert(pair<int, int>(1, 10));

m.insert(pair<int, int>(2, 20));

m.insert(pair<int, int>(3, 30));

m.insert(make_pair(4, 40));

m5 = 50;

printMap(m);

map<int,int>m2(m);

printMap(m2);

map<int,int>m3;

m3=m;

printMap(m3);

}

void test02()

{

map<int,int>m;

m.insert(pair<int,int>(1,10));

m.insert(pair<int,int>(2,20));

m.insert(pair<int,int>(3,30));

if(m.empty())

{

cout<<"map is empty"<<endl;

}

else

{

cout<<"map is not empty"<<endl;

cout<<"size:"<<m.size()<<endl;

}

}

void test03()

{

map<int,int>m;

m.insert(pair<int,int>(1,10));

m.insert(make_pair(2,20));

m3=30;

printMap(m);

m.erase(2);

printMap(m);

}

void test04()

{

map<int,int>m;

m.insert(pair<int,int>(1,10));

m.insert(make_pair(2,20));

m3=30;

map<int,int>::iterator it = m.find(2);

if(it!=m.end())

{

cout<<"find:"<<it->first<<" "<<it->second<<endl;

}

else

{

cout<<"not find"<<endl;

}

int num=m.count(3);

cout<<"num:"<<num<<endl;

printMap(m);

cout<<m.count(2)<<endl;

}

class MyCompare

{

public:

bool operator()(int v1,int v2) const

{

return v1>v2;

}

};

void test05()

{

map<int,int,MyCompare>m;

m.insert(pair<int,int>(1,10));

m.insert(make_pair(2,20));

m3=30;

for(map<int,int,MyCompare>::iterator it=m.begin();it!=m.end();it++)

{

cout<<it->first<<" "<<it->second<<endl;

}

}

int main()

{

//test01();

//test02();

//test03();

//test04();

test05();

return 0;

system("pause");

}

相关推荐
hqzing2 分钟前
鸿蒙 PC 底层开发技术详解(七):二进制自签名算法的实现
算法·华为·harmonyos
AI科技星11 分钟前
超复数全域经济周期场与信息谱场——金融与密码学底层理论重构《0·1·∞三元一体全域超复数统一场论》系列全集(六一字不漏完整合订终版)
人工智能·算法·金融·密码学·拓扑学·乖乖数学·全域数学
༄沐࿆风࿆࿆13 分钟前
JavaScript函数完全指南:从基础语法到闭包原理与应用实战
开发语言·javascript
AI科技星29 分钟前
《01无穷全域信息场论:算子G与宇宙本体高维完备公理大典》
人工智能·python·算法·金融·乖乖数学·全域数学
KobeSacre40 分钟前
DelayQueue 源码
java·开发语言
Tim_1043 分钟前
【C++】013、空类占多少字节?
算法
Ricky_Theseus1 小时前
并查集:连通性问题
算法
Let's Chat Coding1 小时前
身份识别、身份认证与授权的区别
c++
han_hanker1 小时前
重新认识枚举enum
开发语言
Tairitsu_H1 小时前
[LC优选算法#18] 前缀和 | 除⾃⾝以外数组的乘积 | 和为K的⼦数组 | 和可被K整除的⼦数组
算法·前缀和·哈希算法