Stack容器(C++)

吴西岭
2023-12-01

3.5 stack 容器

3.5.1 stack 基本概念

**概念:**stack 是一种先进后出(First In Last Out,FILO)的数据结构,他只有一个出口

栈中只有顶端的元素可以被外界使用,因此栈不允许有遍历行为

栈中进入数据称为 — 入栈(push)

栈中弹出数据称为 — 出栈(pop)

3.5.2 stack 常用接口

功能描述:

  • 栈容器常用的对外接口

构造函数:

  • stack<T> stk; //stack 采用模板类实现,stack 对象的默认构造形式
  • stack(const stack& stk); //拷贝构造函数

赋值操作:

  • stack& operator=(const stack& stk); //重载等号操作符

数据存取:

  • push(elem); //向栈顶添加元素
  • pop(); //从栈顶移除一个元素
  • top(); //返回栈顶元素

大小操作:

  • empty(); //判断堆栈是否为空
  • size(); //返回栈的大小

示例:

#include<iostream>
#include<stack>
using namespace std;

//stack常用接口
void test01() {
	stack<int> s;
	s.push(1);
	s.push(2);
	cout << "现在栈顶元素是:" << s.top() << endl;
	s.pop();
	cout << "现在栈顶元素是:" << s.top() << endl;
	if (s.empty()) {
		cout << "栈为空" << endl;
	}
	else {
		cout << "栈不为空" << endl;
	}
	s.push(10);
	s.push(100);
	cout << "现在栈的大小为:" << s.size() << endl;
}

//主函数
int main() {
	test01();
	system("pause");
	return 0;
}
 类似资料: