1.动态数组
vector<int> a .push_back() .pop.back() .size() .clear()
可能存在空间爆炸问题,用 vector<int> () .swap(v)来解决。
2.集合
set<int> v .insert() .erase() .cout()
比较方式:
Bool operator<(const people &rhs) const { Return h<rhs.h; }
迭代器:
set<Point>::iterator it =v.begin() it!=v.end() it++ it->x *it
从小到大访问
3.映射
map<T1,T2> m #include<map> //#include<utility> m.insert(make_pair(“Tom”,1)); m[“Tom”] .cout(“Tom”) .size() .clear() M[name]++;
从小到大访问
也要用迭代器
It->first It->second
在printf和scanf时可以用c_str().
printf(“%s %d\n” ,( it->first).c_str() , it->second);
4.字符串
Char a[15] Scanf(“%s”,a);
PS:注意当时间超时时,可以试着把cout和cin改成printf和scanf。