Array implementation of a circular queue, Data Structure & Algorithms

Assignment Help:

A circular queue can be implemented through arrays or linked lists. Program 6 gives the array implementation of any circular queue.

Program 6: Array implementation of any Circular queue

include "stdio.h"

void add(int);

void deleteelement(void);

int max=10;         /*the maximum limit for queue has been set*/

static int queue[10];

int front=0, rear=-1; /*queue is initially empty*/

void main()

{

int choice,x;

printf ("Enter # for insertion & $ for removal of front the queue and * for exit");

printf("Enter your choice");

 scanf("%d",&choice);

switch (choice)

{

case 1 :

printf ("Enter element for insertion in queue:");

scanf("%d",&x);

add(x);

break;

case 2 :

deleteelement();

break;

}

}

void add(int y)

{

if(rear == max-1)

rear = 0;

else

rear = rear + 1;

if( front == rear && queue[front] != NULL)

printf("Queue Overflow");

else

queue[rear] = y;

}

void deleteelement()

{

int deleted_front = 0;

if (front == NULL)

printf("Error - Queue empty");

else

{

deleted_front = queue[front];

queue[front] = NULL;

if (front == max-1)

front = 0;

else

front = front + 1;

}

}


Related Discussions:- Array implementation of a circular queue

Binary tree traversals, We have discussed already about three tree traversa...

We have discussed already about three tree traversal methods in the earlier section on general tree. The similar three different ways to do the traversal -inorder , preorder, and p

Implement an open hash table, In a chained hash table, each table entry is ...

In a chained hash table, each table entry is a pointer to a collection of elements. It can be any collection that supports insert, remove, and find, but is commonly a linked list.

Postorder traversal of a binary tree, Postorder traversal of a binary tree ...

Postorder traversal of a binary tree struct NODE { struct NODE *left; int value;     /* can take any data type */ struct NODE *right; }; postorder(struct NODE

Explain avl tree, AVL tree An AVL tree is a binary search tree in which...

AVL tree An AVL tree is a binary search tree in which the height of the left and right subtree of the root vary by at most 1 and in which the left and right subtrees are again

Rl rotation - avl tree, Example: (Double left rotation while a new node is ...

Example: (Double left rotation while a new node is added into the AVL tree (RL rotation)) Figure: Double left rotation when a new node is inserted into the AVL tree A

Data searching, In file access: what is the difference between serial, seq...

In file access: what is the difference between serial, sequential and indexed sequential searching

Algorithm that inputs the codes for all items in stock, A shop sells books,...

A shop sells books, magazines and maps. Every item is identified by a unique 4 - digit code. All books have a code which starts with 1, all maps have a code starting with 2 and all

Process of in-order traversal, In-order Traversal  This process when ex...

In-order Traversal  This process when executed iteratively also needs a stack and a Boolean to prevent the implementation from traversing any portion of a tree twice. The gener

How can the third dimension be displayed on the screen, How can the third d...

How can the third dimension be displayed on the screen The main problem in visualization is the display of three-dimensional objects and scenes on two-dimensional screens. How

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd