Stack trong C++ STL là container adapter triển khai cấu trúc LIFO (Last In First Out) - vào sau ra trước. Hình dung như chồng sách: sách đặt sau cùng sẽ được lấy ra đầu tiên.
Các thao tác chính
| Hàm | Mô tả |
|---|---|
top() | Trả về tham chiếu phần tử đỉnh stack. |
push(x) | Đẩy x vào đỉnh stack. |
pop() | Loại bỏ phần tử đỉnh stack. |
size() | Số phần tử trong stack. |
empty() | Kiểm tra stack rỗng (true/false). |
Ví dụ
#include <bits/stdc++.h>
using namespace std;
int main() {
stack<int> st;
st.push(10); st.push(20); st.push(30); st.push(40);
if (!st.empty()) cout << "Stack size: " << st.size() << endl;
cout << "Elements: ";
while (!st.empty()) {
cout << st.top() << " ";
st.pop();
}
return 0;
}
Đầu ra
Stack size: 4 Elements: 40 30 20 10