栈是一种后进先出的元素序列,访问和删除都只能对栈顶的元素(即最后一个被加入栈的元素)进行,并且元素也只能被添加到栈顶。栈内的元素不能访问。如果一定要访问栈内的元素,只能将其上方的元素全部从栈中删除,使之变成栈顶元素才可以。
stack的模板
template < class T, class Cont == deque <T> >
class stack{
...
};
第二个参数指定实现的类型,默认是deque双端队列,也可以是vector或 list
成员函数
size()
empty()
void pop(); //弹出(即删除)栈顶元素
T & top(); //返回栈顶元素的引用。通过此函数可以读取栈顶元素的值,也可以修改栈顶元素
void push (const T & x); //将 x 压入栈顶
栈数据结构详解
本文深入讲解了栈数据结构的特点和操作方式,包括后进先出原则、栈顶元素的访问和删除,以及如何使用模板实现栈。探讨了stack类的成员函数如size(), empty(), pop(), top()和push()的使用方法。
2092

被折叠的 条评论
为什么被折叠?



