Professional Documents
Culture Documents
Code:
#pragma once
#include "Node.h"
typedef int itemType;
class Queue
{
Node* head;
public:
Queue();
bool isEmpty();
Node* newNode(itemType data);
void enQueue(itemType data);
void deQueue();
void display();
};
}
void Queue::deQueue()
{
Node* ptr = head, * temp = NULL;
if (isEmpty())
cerr << "Queue is Empty\n";
else if (head->next == head)
{
temp = head;
head = NULL;
delete temp;
return;
}
else
{
while (ptr->next != head)
ptr = ptr->next;
temp = head;
head = temp->next;
ptr->next = head;
head->prev = ptr;
delete temp;
return;
}
}
Main .cpp
#include "DoubleCircularQueue.h"
int main()
{
Queue q;
q.enQueue(1);
q.enQueue(2);
q.enQueue(3);
q.enQueue(4);
q.enQueue(5);
q.enQueue(6);
q.enQueue(7);
q.enQueue(8);
q.enQueue(9);
q.enQueue(10);
q.enQueue(11);
q.display();
}
Output: