前言
记录一些刷栈和队列的力扣所学到的一些常用的东西
一、栈的基本操作是什么?
基本操作:
push(x) 将x加入栈中,即入栈操作
pop() 出栈操作(删除栈顶),只是出栈,没有返回值。注意这里如果需要返回值,可以调用this->pop();
top() 返回第一个元素(栈顶元素)
size() 返回栈中的元素个数
empty() 当栈为空时,返回 true
二、队列的基本操作是什么?
1.队列quene
push(x) 将x压入队列的末端
pop() 弹出队列的第一个元素(队顶元素),注意此函数并不返回任何值
front() 返回第一个元素的引用(队顶元素)
back() 返回最后被压入的元素的引用(队尾元素)
empty() 当队列为空时,返回true
size() 返回队列的长度
2.优先队列的使用方法(priority_queu)
empty() 如果队列为空返回真
pop() 删除队顶元素
push() 加入一个元素
size() 返回优先队列中拥有的元素个数
top() 返回优先队列对顶元素
总结
STL中栈往往不被归类为容器,而被归类为container adapter(容器适配器)。
那么问题来了,STL 中栈是用什么容