
栈(stack)在计算机科学中是限定仅在表尾进行插入或删除 *** 作的线性表。栈是一种数据结构,它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始d出数据。栈是只能在某一端插入和删除的特殊线性表。用桶堆积物品,先堆进来的压在底下,随后一件一件往堆。取走时,只能从上面一件一件取。读和取都在顶部进行,底部一般是不动的。栈就是一种类似桶堆积物品的数据结构,进行删除和插入的一端称栈顶,另一端称栈底。插入一般称为进栈,删除则称为退栈。 栈也称为后进先出表。
栈实现了后进先出的数据结构。栈仅允许在一端进行插入(push)和删除(pop)运算。在 C++ 中使用栈要引入头文件。
#include<stack>
1
1
声明
在构造栈时,要指定存储数据类型,它可以是整型、字符型等,也可以是类或者其它类型。例如。
stack<int>s // 命名为s的栈用来存储整型数据
stack<double>s2 // 命名为s2的栈用来存储双精度浮点型数据
1
2
1
2
存在两个类型相同的栈时,用赋值号即可完成赋值。
stack<int>s2
s2 = s
1
2
1
2
也可以用构造方法。
stack<int>s2(s)
1
1
访问元素
栈只能访问栈顶元素。
cout <<s.top() <<endl
1
1
注意:这个 *** 作只能返回栈顶元素,并不能删除栈顶元素。要删除栈顶元素,则使用 pop() 方法。
栈的大小
s.empty()
1
1
如果栈是空的,则返回 true,否则返回 false。
s.size()
1
1
返回当前栈中元素的个数。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)