栈的基本用法
- 入栈:如
s.push(x); - 出栈:如
s.pop()。注意:出栈操作只是删除栈顶的元素,并不返回该元素。 - 访问栈顶:如
s.top(); - 判断栈空:如
s.empty()。当栈空时返回 true。 - 访问栈中的元素个数:如
s.size()。
以下代码将详细解释栈在 C++ 中的用途。
#include <iostream>
#include <stack>
using namespace std;
int main() {
// 1. 栈的声明和初始化
stack<int> s; // 创建一个存储 int 类型的栈
// 2. 向栈中添加元素 (压栈)
s.push(10); // 栈底 -> [10]
s.push(20); // 栈底 -> [10, 20]
s.push(30); // 栈底 -> [10, 20, 30] <- 栈顶
// 3. 访问栈顶元素
cout << "栈顶元素:" << s.top() << endl; // 输出:30
// 4. 移除栈顶元素 (弹栈)
s.pop(); // 移除 30
cout << "弹出后栈顶元素:" << s.top() << endl; // 输出:20
// 5. 检查栈是否为空
if (!s.empty()) {
cout << "栈不为空" << endl;
}
// 6. 获取栈的大小
cout << << s.() << endl;
cout << ;
(!s.()) {
cout << s.() << ;
s.();
}
cout << endl;
cout << << s.() << endl;
stack<> s1, s2;
s();
s();
s();
s();
s();
s(s2);
cout << << s() << endl;
cout << << s() << endl;
;
}


