Cirqular
Cirqular
h>
#include<conio.h>
class queue
{
int item;
struct node
{
int data;
node*link;
}
*front,*rear,*temp,*t,*null;
public:
queue();
void insert();
void remove();
void disp();
};
queue::queue()
{
rear=front=null;
}
void queue::insert()
{
cout<<"enter the data";
cin>>item;
temp=new node;
temp->data=item;
if(front==null)
{
front=rear=temp;
rear->link=front;
}
else
{
rear->link=temp;
rear=temp;
rear->link=front;
}
cout<<"\n inserted";
}
void queue::remove()
{
if(front==null)
{
cout<<"\n queue empty";
}
else
{
if(front==rear)
{
front=rear=null;
}
else
{
t=front;
front=front->link;
rear->link=front;
delete t;
}
cout<<"\n deleted:";
}
}
void queue::disp()
{
if(front==null)
{
cout<<"\n queue empty:";
}
else
{
cout<<"\n queue elements are..";
temp=front;
while(temp!=rear)
{
cout<<"\n"<<temp->data;
temp=temp->link;
}
cout<<"\n"<<temp->data;
}
}
void main()
{
queue ob;
int ch;
clrscr();
do
{
cout<<"\n[1].insert";
cout<<"\n[2].remove";
cout<<"\n[3].disp";
cout<<"\n[4].exit";
cout<<"\n enter your choice[1/2/3/4]";
cin>>ch;
if(ch==1)
ob.insert();
else if(ch==2)
ob.remove();
else if(ch==3)
ob.disp();
}
while(ch!=4);
getch();
}