Queue Implementation
Queue Implementation
Preconditions:
#include<stdio.h>
#define size 5
int qu[size],ele;
int front=-1,rear=-1;
void enque(int);
void deque();
void traverse();
void main()
{
int ch,item;
clrscr();
while(1)
{
printf("*****QUEUE
IMPLEMENTATION*****\n");
printf("1.ENQUEUE\n");
printf("2.DEQUEUE\n");
printf("3.TRAVERSE\n");
printf("4.EXIT\n");
printf("ENTER THE CHOICE\n");
scanf("%d",&ch);
switch(ch)
{
case 1: printf("\nenter the element to enque:");
scanf("%d",&item);
enque(item);
break;
case 2: deque();
break;
case 3: traverse();
break;
case 4: exit(0);
default: printf("INVALID CHOICE\n");
}
}
getch();
}
void enque(ele)
{
if(rear==size-1)
{
printf("\nQUEUE IS OVERFLOW\n");
}
else if(front==-1 && rear==-1)
{
front=0;
rear=0;
qu[rear]=ele;
printf("INSERTED ELE IS %d\n",ele);
}
else
{
if(rear<size)
{
rear++;
qu[rear]=ele;
printf("INSERTED ELE IS %d\n",ele);
}
}
}
void deque()
{
if(front==-1 && rear==-1)
{
printf("\nUNDER FLOW\n");
}
else
{
ele=qu[front];
printf("DELETED ELE IS %d\n",ele);
front++;
if(front>rear)
{
front=-1;
rear=-1;
}
}
}
void traverse()
{
if(front==-1 && rear==-1)
{
printf("\nQUEUE IS UNDER FLOW\n");
}
else
{
int i;
for(i=front;i<=rear;i++)
{
printf("\n%d\t",qu[i]);
}
}
}
Void enque(ele)
{
If (rear==size-1)
Over flow
}
Void deque()
{
If(front==rear==-1)
{
Under flow
}
Else if(front==size-1 && rear!=size-1)
{
Ele=cq[front];
Front=0;
}
Else
{
Ele=cq[front];
Front++;
If(front==rear)
Front=-1
Rear=-1