万能头文件
#include <bits/stdc++.h>
using namespace std;
using namespace std;
Map基本操作
ma[ ]:访问map中的元素,若该元素不存在,将创建一个新元素并将该元素映射到值类型的初始值上(对于int类型,初始值为0)ma.size():返回map中元素个数ma.count(element):若元素element存在map中返回1,否则返回0ma.clear():清空mapma.lower_bound():返回键值大于等于给定元素的第一个位置
迭代器使用
map<string, int>::iterator it; // 声明迭代器it
// 输出键值对
cout << it->first << ":" << it->second << endl;
// 输出键值对
cout << it->first << ":" << it->second << endl;
删除操作
ma.erase(it):删除it指向的元素ma.erase(key):删除指定键的元素ma.erase(it, ma.end()):删除从it开始到结尾的所有元素
二分查找函数
lower_bound(first, last, val):返回非递减序列[first, last)中第一个大于等于val的位置,如果所有元素都小于val,则返回last的位置upper_bound(first, last, val):返回非递减序列[first, last)中第一个大于val的位置,如果所有元素都小于等于val,则返回last的位置binary_search(first, last, val):在序列中进行二分查找,若在序列中找到值val则返回True,否则返回False
去重函数
unique(a.begin(), a.end()):去除相邻的重复元素(只保留一个)注意:对于无序序列,需要先用sort进行排序,才能正确使用此函数。
文件操作
ifstream:从文件读取数据ofstream:向文件写入数据