Dequeue Algorithm and Program in C Using Array
(Queue)
1. Dequeue Algorithm (Using Array)
Algorithm Steps:
1. Check if front == -1 OR front > rear
- If yes → Queue is Empty (Underflow)
2. Store queue[front] in a variable (deleted element)
3. Increase front by 1
- front = front + 1
4. If after deletion front > rear
- Set front = -1 and rear = -1 (Queue becomes empty)
2. Dequeue Program in C (Using Array)
#include <stdio.h>
#define MAX 5
int queue[MAX];
int front = -1, rear = -1;
void enqueue(int value)
{
if (rear == MAX - 1)
{
printf("Queue Overflow! Cannot insert %d\n", value);
}
else
{
if (front == -1)
{
front = 0;
}
rear++;
queue[rear] = value;
printf("%d inserted into queue\n", value);
}
}
void dequeue()
{
if (front == -1 || front > rear)
{
printf("Queue Underflow! Queue is empty\n");
}
else
{
printf("%d deleted from queue\n", queue[front]);
front++;
if (front > rear)
{
front = -1;
rear = -1;
}
}
}
void display()
{
if (front == -1)
{
printf("Queue is empty\n");
}
else
{
printf("Queue elements are: ");
for (int i = front; i <= rear; i++)
{
printf("%d ", queue[i]);
}
printf("\n");
}
}
int main()
{
enqueue(10);
enqueue(20);
enqueue(30);
display();
dequeue();
display();
dequeue();
dequeue();
display();
return 0;
}
3. Sample Output
10 inserted into queue
20 inserted into queue
30 inserted into queue
Queue elements are: 10 20 30
10 deleted from queue
Queue elements are: 20 30
20 deleted from queue
30 deleted from queue
Queue is empty