07.stack 容器

7、stack 容器

概念:

  • stack 是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口

07.stack 容器_第1张图片

  • 栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为
  • 栈中进入数据称为 — 入栈 push
  • 栈中弹出数据称为 — 出栈 pop

7.1 stack 常用接口

功能描述:

构造函数:

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

赋值操作:

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

数据存取:

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

大小操作:

empty();	// 判断堆栈是否为空
size();		// 返回栈的大小
#include 
#include 
using namespace std;

void test01() {
	stack st;
	st.push(10);
	st.push(20);
	st.push(30);

	while (!st.empty()) {
		// 输出栈顶元素
		cout << "栈顶元素为:" << st.top() << endl;
		// 弹出栈顶元素
		st.pop();
	}
	cout << "栈的大小为:" << st.size() << endl;
}

int main() {
	test01();
	system("pause");
	return 0;
}

总结:

  • 入栈 — push
  • 出栈 — pop
  • 返回栈顶 — top
  • 判断栈是否为空 — empty
  • 返回栈大小 — size

7.2 stack 遍历

stack st;
for (int i = 0; i < 10; ++i) {
    st.push(i);
}
while( !st.empty()) {
    int tp = st.top();
    st.pop();
}

你可能感兴趣的:(#,C++提高编程,c++,笔记,stl)