Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Chương trình C++ triển khai Stack trong STL

stack là cấu trúc dữ liệu tuyến tính tuân theo nguyên tắc LIFO (Last In First Out - Vào sau ra trước) hoặc FILO (First In Last Out). Phần tử được thêm vào cuối (đỉnh) và cũng bị lấy ra từ cuối.

Các hàm chính

  • s.size() – Số phần tử trong stack.
  • s.push() – Đẩy phần tử vào đỉnh stack.
  • s.pop() – Lấy phần tử đỉnh ra (không trả về giá trị).
  • s.top() – Trả về tham chiếu đến phần tử đỉnh.
  • s.empty() – Kiểm tra stack rỗng.

Ví dụ mã: Menu Stack

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

int main() {
    stack<int> s;
    int c, i;

    while (true) {
        cout << "1. Kích thước Stack\n";
        cout << "2. Thêm phần tử vào Stack\n";
        cout << "3. Xóa phần tử khỏi Stack\n";
        cout << "4. Phần tử đỉnh Stack\n";
        cout << "5. Thoát\n";
        cout << "Nhập lựa chọn: ";
        cin >> c;

        switch (c) {
            case 1:
                cout << "Kích thước stack: " << s.size() << endl;
                break;
            case 2:
                cout << "Nhập giá trị: ";
                cin >> i;
                s.push(i);
                break;
            case 3:
                if (!s.empty()) {
                    i = s.top();
                    s.pop();
                    cout << i << " Đã xóa\n";
                } else {
                    cout << "Stack rỗng!\n";
                }
                break;
            case 4:
                if (!s.empty())
                    cout << "Phần tử đỉnh: " << s.top() << endl;
                else
                    cout << "Stack rỗng!\n";
                break;
            case 5:
                return 0;
            default:
                cout << "Lựa chọn không hợp lệ\n";
        }
    }
    return 0;
}

Kết quả mẫu

1. Kích thước Stack
2. Thêm phần tử vào Stack
3. Xóa phần tử khỏi Stack
4. Phần tử đỉnh Stack
5. Thoát
Nhập lựa chọn: 1
Kích thước stack: 0
...
Nhập lựa chọn: 2
Nhập giá trị: 1
...
Nhập lựa chọn: 3
4 Đã xóa
...
Nhập lựa chọn: 4
Phần tử đỉnh: 10
Nhập lựa chọn: 5