multiset 有排序,log n 的插入和删除,而优先队列只可排序和插入,还不支持随机访问,是不是说优先队列的功能是 multiset 的真子集?
一些题目是要求给一个集合插入一个元素,一个字符串对应一个数字,如果我使用 m.insert(make_pair(str,num))
来插入就会WA;
但是如果使用
m[str]=num
的方式就AC了,请问这是为什么?
3.据说 vector 申请内存为倍增,设数据范围为 216+1,内存限制为 220,vector 是否会 MLE?
4.map 和 unordered_map 的区别?
5.假如 multiset 中有多个 key 值相同的元素,但 val 不同,调用 find() 时会如何返回?]
6.STL集合类元素中 size() 的复杂度是多少?蓝书说是 O(1) ,但实际中 for(int i=0;i<str.size();i++) 这样写会超时,而预先用变量存好该函数的值则会通过。
7.STL+O2 和手写的效率比较?