Hàng đợi (Queue)
Queue hoạt động theo FIFO (First In First Out): chèn ở rear (cuối), xóa ở front (đầu). Phần tử vào trước được lấy ra trước.
Các thao tác cơ bản
Enqueue(int data)– Chèn vào cuối.Dequeue()– Xóa từ đầu.
Ví dụ minh họa
#include <iostream>
using namespace std;
struct Queue {
int front, rear, capacity;
int *arr;
Queue(int c) : front(0), rear(0), capacity(c) { arr = new int[c]; }
~Queue() { delete[] arr; }
void Enqueue(int x) {
if (rear == capacity) { cout << "Queue day (Overflow)\n"; return; }
arr[rear++] = x;
}
void Dequeue() {
if (front == rear) { cout << "Queue rong (Underflow)\n"; return; }
for (int i=0; i
Kết quả
Queue rong
Sau khi them:
10 <-- 20 <-- 30 <--
Sau 2 lan xoa:
30 <--
Front: 30