首页 > 代码库 > c++标准模板库的使用

c++标准模板库的使用

1.priority_queue<Type, Container, Functional>
    priority_queue<int,vector<int>,greater<int> >q;
    //小根堆,即对头元素最小;
    priority_queue<int>//默认情况,大根堆,即队头元素最大。(后续更新)

2.deque【双端队列】
    接口类似vector(单向插入删除)
    c.pop_back() 弹出最后一个元素
    c.push_back(elem)从后面插入一个元素
    deque(双向插入删除)
    c.push_front(elem)从前面插入一个元素
    c.pop_front(elem)删除最前面的元素
    c.clear()清除队列中所有元素
    c.size()返回队列中的元素数量

3.stack
    stack<int>s;
    stack<string>s;
    s.push(x)无返回值,将元素x压栈
    s.pop();退栈,无返回值
    s.top();取栈顶元素,返回栈顶元素
    s.empty();判断栈是否为空,如果是空,返回1,否则返回0
        s.size();返回栈中元素的个数
    在栈中没有提供清空操作的函数,但是可以间接地实现清空栈,
    while(!s.empty())s.pop();
    stack模板类需要2个模板参数,一个为元素类型,一个为容器类型,但是只有元素类型是必要的,在容器类型缺省时,默认为deque。

sgu271