DS (RM) Program - Stack And Queue: Circular Queue
Output:
1. Enqueue
2. Dequeue
3. Quit
Enter Option : 1
Input item to be inserted
12
Queue count is : 1
1. Enqueue
2. Dequeue
3. Quit
Enter Option : 1
Input item to be inserted
4
Queue count is : 2
1. Enqueue
2. Dequeue
3. Quit
Enter Option : 2
The element dequeue is : 12
Queue count is : 1
1. Enqueue
2. Dequeue
3. Quit
Enter Option : 2
The element dequeue is : 4
Queue count is : 0
1. Enqueue
2. Dequeue
3. Quit
Enter Option : 2
Cant dequeue element from queue ...
1. Enqueue
2. Dequeue
3. Quit
Enter Option :3
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 | #include<iostream.h> #include<conio.h> #include<stdlib.h> class Queue { int qary[10]; int front, count, rear; public : Queue() { front = -1; rear = -1; count = 0; } void enqueue(int element) { if(count==10) { { cout<<"Cant Enqueue an element ..."; } else { rear++; qary[rear] = element; if(rear==3) { cout<<"Circuler Enqueue ..."; rear=0; } if(count==0) { front = 0; count = 1; } else count++; } cout<<"Queue count is : "<<count<<endl; } void dequeue() { int i; if(!count) { cout<<"Cant dequeue element from queue ...\n"; } else { i = qary[front]; qary[front] = 0; front++; if(count==3) { cout<<"Circular Dequeue ...\n"; } if(count==1) rear = front = -1; count--; cout<<"\n The element dequeue is : "<<i<<endl; cout<<"\n Queue count is : "<<count<<endl; } } }; void main() { int item, n, cnt, flag; Queue q1; clrscr(); while(1) { cout<<"1. Enqueue \n"; cout<<"2. Dequeue \n"; cout<<"3. Quit \n"; cout<<"Enter Option : "; cin>>n; switch(n) { case 1: cout<<"Input item to be inserted\n"; cin>>item; q1.enqueue(item); break; case 2: q1.dequeue(); break; case 3: exit(1); break; default: cout<<"Illegal option ...!!!!\n"; } } } |
Output:
1. Enqueue
2. Dequeue
3. Quit
Enter Option : 1
Input item to be inserted
12
Queue count is : 1
1. Enqueue
2. Dequeue
3. Quit
Enter Option : 1
Input item to be inserted
4
Queue count is : 2
1. Enqueue
2. Dequeue
3. Quit
Enter Option : 2
The element dequeue is : 12
Queue count is : 1
1. Enqueue
2. Dequeue
3. Quit
Enter Option : 2
The element dequeue is : 4
Queue count is : 0
1. Enqueue
2. Dequeue
3. Quit
Enter Option : 2
Cant dequeue element from queue ...
1. Enqueue
2. Dequeue
3. Quit
Enter Option :3
