STL 容器操作

MAP

1. map默认从小到达排序,想要从大到小,可以:

map<string, int, greater<string>>

 

 2. map 不可以使用sort排序!不过可以使用在定义map的时候,传入函数指针自定义map排序

 

 

LIST

比如在第五个位置插入3个88的 错误方法:

auto ite = data.begin();

data.insert(iter + 5, 3, 88);

ite不可以直接+5,不支持这个操作,实际上ite一般支持++,比如++ite比ite++更简单?

正确方法:

auto iter = begin(data);

std::advance(iter, 5);

data.insert(iter, 3, 88);

 但是vector的insert就可以直接vec.insert(vec.begin() + 5, 88);

 

SET

set没有push()和push_back()操作,取代的是:insert() 或 emplace()!

 

上一篇:Taro的一些问题总结


下一篇:# EA 的练习赛 2 题解