Queue Using Linked List Data Structure Code

 

Queue Using Linked List Watch Video Click Here


Source Code

#include<iostream>
#include<conio.h>
using namespace std;
class Node
{
public:
int data;
Node *next_add;
};
class Linked_List
{
private:
Node *Head;
Node *Tail;
public:
Linked_List()
{
Head = NULL;
Tail = NULL;
}
void Enqueue(int value)
{
Node *newNode = new Node;
newNode -> data = value;
newNode -> next_add = NULL;
if(Head == NULL)
{
Head = newNode;
Tail = newNode;
}
else
{
Tail -> next_add = newNode;
Tail = newNode;
}
cout<<"\n\n *** Node "<<value<<" Value Enqueue Successfully ***";
}
void Dequeue()
{
if(Head == NULL)
{
cout<<"\n\n *** Linked List is Empty ***";
}
else
{
Node *ptr = Head;
Head = Head -> next_add;
cout<<"\n\n *** Node "<<ptr -> data<<" Value Dequeue Successfully ***";
delete ptr;
}
}
void Display()
{
if(Head == NULL)
{
cout<<"\n\n *** Linked List is Empty ***";
}
else
{
cout<<"\n\n Queue Values: ";
Node *ptr = Head;
while(ptr != NULL)
{
cout<<ptr -> data<<" ";
ptr = ptr -> next_add;
}
}
}
~Linked_List()
{}
};
main()
{
Linked_List obj;
obj.Enqueue(5);
obj.Enqueue(2);
obj.Enqueue(12);
obj.Enqueue(1);
obj.Enqueue(14);
obj.Enqueue(18);
obj.Enqueue(22);
obj.Display();
getch();
return 0;
}

Post a Comment

Previous Post Next Post