Topic 2
Queue (Array & LL)
FIFO โ First In, First Out
A queue works like a real-life waiting line. First person to join the line gets served first.
Operations: enqueue() โ add at the rear, dequeue() โ remove from the front
๐งฉ
Array Queue: Uses
front and rear pointers (indexes). Starts at -1.๐งฉ
LL Queue: Uses
front and rear node pointers. Starts at NULL.๐งฉ
Enqueue: Array
arr[++rear] | LL inserts Node at rear.๐งฉ
Dequeue: Array
front++ | LL removes Node at front.Array Queue vs Linked List Queue
| Aspect | Array Queue | Linked List Queue |
|---|---|---|
| Size | Fixed | Dynamic |
| Pointers | int front = -1, rear = -1 | Node *front = NULL, *rear = NULL |
| Enqueue | arr[++rear] = value | rear->next = newNode; rear = newNode; |
| Dequeue | front++ | Node* temp = front; front = front->next; delete temp; |
| Queue Full | rear == size - 1 | Never full (memory permitting) |