Advertisement
a_pramanik

Queue implementation using array

Jul 18th, 2019
503
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.28 KB | None | 0 0
  1. #include<stdio.h>
  2. #define SIZE 5
  3. void enQueue(int);
  4. void deQueue();
  5. void display();
  6. int items[SIZE+10], front = -1, rear = -1;
  7. int main()
  8. {
  9.     //deQueue is not possible on empty queue
  10.     deQueue();
  11.    
  12.     //enQueue 5 elements
  13.     enQueue(1);
  14.     enQueue(2);
  15.     enQueue(3);
  16.     enQueue(4);
  17.     enQueue(5);
  18.    
  19.     //6th element can't be added to queue because queue is full
  20.     enQueue(6);
  21.    
  22.     display();
  23.    
  24.     //deQueue removes element entered first i.e. 1
  25.     deQueue();
  26.    
  27.     //Now we have just 4 elements
  28.     display();
  29.    
  30.     return 0;
  31.    
  32. }
  33. void enQueue(int value){
  34.     if((rear-front)+1 >= SIZE)
  35.         printf("\nQueue is Full!!");
  36.     else {
  37.         if(front == -1)
  38.             front = 0;
  39.         rear++;
  40.         items[rear] = value;
  41.         printf("\nInserted -> %d", value);
  42.     }
  43. }
  44. void deQueue(){
  45.     if(front == -1)
  46.         printf("\nQueue is Empty!!");
  47.     else{
  48.         printf("\nDeleted : %d", items[front]);
  49.         front++;
  50.         if(front > rear)
  51.             front = rear = -1;
  52.     }
  53. }
  54. void display(){
  55.     if(rear == -1)
  56.         printf("\nQueue is Empty!!!");
  57.     else{
  58.         int i;
  59.         printf("\nQueue elements are:\n");
  60.         for(i=front; i<=rear; i++)
  61.             printf("%d\t",items[i]);
  62.     }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement