Files
python/C++专题课程/STL基础知识/键值对使用.cpp

85 lines
1.6 KiB
C++
Raw Normal View History

2025-08-30 18:35:01 +08:00
#include<bits/stdc++.h>
using namespace std;
/*
<EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӡmap
<EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD><EFBFBD>ƺ<EFBFBD>
ʱ<EFBFBD>䣺2019-10-29
*/
void printMap(map<int, int> _map) {
map<int, int>::iterator iter = _map.begin();
for (; iter != _map.end(); iter++) {
cout << iter->first << ' ' << iter->second << endl;
}
cout << endl;
}
/*
<EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Dz<EFBFBD><EFBFBD>Ǵ<EFBFBD><EFBFBD><EFBFBD>map<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD><EFBFBD>ƺ<EFBFBD>
ʱ<EFBFBD>䣺2019-10-29
*/
bool isExist(map<int, int> _map, int a) {
map<int, int>::iterator iter = _map.find(a);
if (iter != _map.end()) {
return 1;
}
else {
return 0;
}
}
/*
<EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD>map<EFBFBD><EFBFBD>ɾ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD><EFBFBD>ƺ<EFBFBD>
ʱ<EFBFBD>䣺2019-10-29
*/
void deleteMapByKey(map<int, int>& _map, int a) { //ע<><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>&<26><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5> ,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>ʵ<EFBFBD>ε<EFBFBD>ֵ
//<2F><><EFBFBD>ݼ<EFBFBD>ֵɾ<D6B5><C9BE>
_map.erase(a);
}
/*
<EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><EFBFBD>޸<EFBFBD>map<EFBFBD>е<EFBFBD>һ<EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD><EFBFBD>ƺ<EFBFBD>
ʱ<EFBFBD>䣺2019-10-29
*/
void updateForMap(map<int, int>& _map, int key, int value) { //ע<><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>&<26><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5> ,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>ʵ<EFBFBD>ε<EFBFBD>ֵ
map<int, int>::iterator iter = _map.find(key);
if (iter != _map.end()) {
iter->second = value;
return;
}
}
int main() {
//<2F>ֵ<EFBFBD>map
map<int, int> _map;
//<2F><><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA>
for (int i = 1; i <= 10; i++) {
pair<int, int> value(i, i);
_map.insert(value);
}
//<2F><>ӡ<EFBFBD>Dz<EFBFBD><C7B2>Ǵ<EFBFBD><C7B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3
cout << "<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD><EFBFBD>" << isExist(_map, 3) << endl;
//<2F><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>Ԫ<EFBFBD><D4AA>3
deleteMapByKey(_map, 3);
//<2F>ٴδ<D9B4>ӡ<EFBFBD>Dz<EFBFBD><C7B2>Ǵ<EFBFBD><C7B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3
cout << "<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD><EFBFBD>" << isExist(_map, 3) << endl;
//<2F><><EFBFBD><EFBFBD>map
cout << "Ԫ<EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>ǰ<EFBFBD><EFBFBD>map" << endl;
printMap(_map);
//<2F>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>
updateForMap(_map, 6, 10);
//<2F><><EFBFBD><EFBFBD>map
cout << "Ԫ<EFBFBD><EFBFBD><EFBFBD>޸ĺ<EFBFBD><EFBFBD><EFBFBD>map" << endl;
printMap(_map);
return 0;
}