Total members 11893 |It is currently Tue Nov 05, 2024 6:28 am Login / Join Codemiles

Java

C/C++

PHP

C#

HTML

CSS

ASP

Javascript

JQuery

AJAX

XSD

Python

Matlab

R Scripts

Weka





generic queue C++ code
cpp code
#include <iostream>
using namespace std;

#define SIZE 100

template <class Qtype> class q_type {
Qtype queue[SIZE];
int head, tail;
public:
q_type() {
head = tail = 0;
}
void q(Qtype num);
Qtype deq();
};

template <class Qtype> void q_type<Qtype>::q(Qtype num)
{
if(tail+1==head || (tail+1==SIZE && !head)) {
cout << "Queue is full.\n";
return;
}
tail++;
if(tail==SIZE)
tail = 0; // cycle around
queue[tail] = num;
}

template <class Qtype> Qtype q_type<Qtype>::deq()
{
if(head == tail) {
cout << "Queue is empty.\n";
return 0;
}
head++;
if(head==SIZE)
head = 0;
return queue[head];
}

int main()
{
q_type<int> queue1;
q_type<char> queue2;
int i;

for(i=1; i <=10; i++) {
queue1.q(i);
queue2.q(i-1+'A');
}

for(i=1; i <=10; i++) {
cout << "Dequeue 1: " << queue1.deq() << endl;
cout << "Dequeue 2: " << queue2.deq() << endl;
}

return 0;
}




_________________
Please recommend my post if you found it helpful


Author:
Beginner
User avatar Posts: 95
Have thanks: 2 time
Post new topic Reply to topic  [ 1 post ] 

  Related Posts  to : generic queue
 Generic Algorithm     -  
 Need help with generic listeners     -  
 Queue Header     -  
 Circular Queue     -  
 priority queue     -  
 queue of objects keep track of the front and rear     -  



Topic Tags

C++ OOP
cron





Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
All copyrights reserved to codemiles.com 2007-2011
mileX v1.0 designed by codemiles team
Codemiles.com is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to Amazon.com