Lab Assignment-5 DSA
Lab Assignment-5 DSA
Code –
#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
Struct Queue {
Unsigned capacity;
Int* array;
};
// of given capacity.
{
Struct Queue* queue = (struct Queue*)malloc(
Sizeof(struct Queue));
Queue->capacity = capacity;
Queue->front = queue->size = 0;
Queue->rear = capacity – 1;
Queue->array = (int*)malloc(
Queue->capacity * sizeof(int));
Return queue;
}
// Queue is empty when size is 0
If (isFull(queue))
Return;
Queue->rear = (queue->rear + 1)
% queue->capacity;
Queue->array[queue->rear] = item;
Queue->size = queue->size + 1;
}
// Function to remove an item from queue.
If (isEmpty(queue))
Return INT_MIN;
Queue->front = (queue->front + 1)
% queue->capacity;
Queue->size = queue->size – 1;
Return item;
If (isEmpty(queue))
Return INT_MIN;
Return queue->array[queue->front];
If (isEmpty(queue))
Return INT_MIN;
Return queue->array[queue->rear];
Int main()
Enqueue(queue, 10);
Enqueue(queue, 20);
Enqueue(queue, 30);
Enqueue(queue, 40);
Dequeue(queue));
Return 0;
Output –