#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
struct node
{
int x;
node *next;
};
class queue
{
private:
node *front,*rear;
public:
queue()
{
front=rear=NULL;
}
void menu();
void insert();
void del();
void display();
};
void queue::menu()
{
int ch;
do
{
cout<<endl;
cout<<"QUEUE MENU"<<endl
<<"1.Insert"<<endl
<<"2.Delete"<<endl
<<"3.Display"<<endl
<<"4.Exit"<<endl;
cout<<"Enter your choice : ";
cin>>ch;
switch(ch)
{
case 1: insert();
break;
case 2: del();
break;
case 3: display();
break;
case 4: exit(0);
break;
default:
cout<<"Sorry! invalid choice"<<endl;
}
}while(ch!=4);
}
void queue::insert()
{
node *temp;
temp = new node;
int a;
cout<<"Enter an element into queue : ";
cin>>a;
temp->x=a;
temp->next=NULL;
if(front==NULL)
front=temp;
else
rear->next=temp;
rear=temp;
}
void queue:: del()
{
node *temp;
if(front==NULL)
cout<<"Queue is Underflow"<<endl;
else
{
temp=front;
cout<<"Deleted element is : "<<temp->x<<endl;
front=front->next;
delete temp;
}
}
void queue::display()
{
node *ptr;
if(front==NULL)
cout<<"Queue is empty"<<endl;
else
{
cout<<"Queue elements are : ";
for(ptr=front;ptr;ptr=ptr->next)
cout<<ptr->x<<" ";
cout<<endl;
}
}
void main()
{
queue q;
clrscr();
q.menu();
getch();
}
No comments:
Post a Comment