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

Các thao tác trên Hàng đợi (Queue) trong cấu trúc dữ liệu


Hàng đợi (Queue) là cấu trúc dữ liệu First In First Out (FIFO). Dùng trong duyệt đồ thị BFS, v.v. Queue có các thao tác nguyên thủy. Phần này xem các thao tác và ví dụ dùng Queue ADT.

ADT (Abstract Data Type) là kiểu dữ liệu đặc biệt, hành vi định nghĩa bởi tập giá trị và tập thao tác. Logic hoạt động bị ẩn khỏi người dùng.

Các thao tác Queue ADT

  • isFull() – Kiểm tra queue có đầy không
  • isEmpty() – Kiểm tra queue có rỗng không
  • enqueue(x) – Thêm x vào cuối queue
  • dequeue() – Xóa phần tử từ đầu queue
  • front() – Lấy phần tử đầu queue (không xóa)
  • size() – Số phần tử trong queue

Ví dụ C++

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

int main() {
    queue<int> que;
    if(que.empty()) cout << "Queue is empty" << endl;
    else cout << "Queue is not empty" << endl;
    // insert
    que.push(10); que.push(20); que.push(30); que.push(40); que.push(50);
    cout << "Size of the queue: " << que.size() << endl;
    // delete and display
    while(!que.empty()) {
        int item = que.front();
        que.pop();
        cout << item << " ";
    }
}

Kết quả

Queue is empty
Size of the queue: 5
10 20 30 40 50