vector< int > vi; vi.push_back(i); vi.pop_back(); //无实参 vi.size(); vi.clear(); vi.insert(it, x); //在it迭代器指定的位置上插入一个元素x,vector中的it处及其后面的元素顺次向后移动一位 vi.erase(it); vi.erase(first, last); 举例:vi.erase(vi.begin()+1, vi.begin()+4);
set< int > st; st.insert(x); st.find(value); //返回迭代器 st.erase(it); st.erase(value); st.erase(first, last);//注意是迭代器 st.size(); st.clear();
string str; str.length(); //or str.size(); str.insert(pos, string); str.insert(it, it2, it3); str.erase(it); str.erase(first, last); str.erase(pos, length); str.clear(); str.substr(pos, len); //返回从pos位开始的长度为len的子串 str.find(str2); //返回str2在str中第一次出现的位置,若不是str的子串,函数返回string::npos(可以把这理解为一个常数); str.find(pos, str2); str.replace(pos, len, str2); //替换 str.replace(it1, it2, str2);
#include < queue > priority_queue< int > q; q.push(x); q.top(); q.pop(); q.empty(); q.size(); 默认是数字大的优先级高。 priority_queue< int > q; priority_queue< int, vector< int >, less< int > > q;//与上面等价 若想让数字小的优先级高,则 priority_queue< int, vector< int >, greater< int > > q;