C++stack容器(笔记自用
概念:stack是一种先进后出(First in Last Out,FILO)的数据结构,它只有一个出口
栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为
但栈可以判断容器是否为空(使用empty
栈可以返回元素个数(使用size
栈中进入数据成为入栈push
栈中弹出数据称为出栈pop
stack常用接口
构造函数:
stack<T>stk;//stack采用模板类,stack对象的默认构造形式
stack(const stack &stk);//拷贝构造函数
赋值操作
stcak& operator=(const stack &stk);//重载等号操作符
数据存取:
push(elem);//向栈顶添加元素
pop();//从栈顶移除掉第一个元素
top();//返回栈顶元素
大小操作
empty();//判断堆栈是否为空
size();//返回栈的大小
示例:
需要包含头文件
//可以试着用于逆置数组元素
void test01()
{
stack<int>s;
s.push(10);
s.push(20);
s.push(30);
s.push(40);
cout<<"栈的大小"<<s.size()<<endl;
//只要栈不为空,查看栈顶,并且执行出栈操作
while(!s,empty())
{
//查看栈顶元素
cout<<s.top()<<endl;
//出栈
s.pop();
}
cout<<"栈的大小"<<s.size()<<endl;
}