Implementation of queue, Data Structure & Algorithms

Assignment Help:

For a queue a physical analogy is a line at booking counter. At booking counter, customers go to the rear (end) of the line & customers are attended to several services from the front of the line. Unlike stack, customers are inserted at the rear end & deleted from the front end into a queue (FIFO).

In computer science, an instance of the queue is print jobs scheduled for printers. These jobs are maintained into a queue. The job fired for the printer first gets printed first. Similar is the scenario for job scheduling in the CPU of computer.

Like a stack, usually a queue also holds data elements of the similar type. Usually We graphically display a queue horizontally. Figure demonstrates a queue of 5 characters.

2141_IMPLEMENTATION OF QUEUE.png

        Figure: A queue of characters

In a queue the rule followed is that elements are inserted at the rear & come off of the front of the queue. After the insertion of an element to the above queue, the position of rear pointer alters as illustrated below. Now the rear is pointing to the new element 'g' added at the rear of the queue.

1597_IMPLEMENTATION OF QUEUE1.png

Figure: Queue of above figure after addition of new element

After the elimination of element 'a' from the front, the queue alters to the following along with the front pointer pointing to 'b'.

705_IMPLEMENTATION OF QUEUE2.png

Figure: Queue of figure 5.2 after deletion of an element

Algorithm for insertion of an element to the queue

Step 1: Create a new element to be inserted

Step 2: If the queue is empty, then go to

Step 3, else perform step 4

Step 3: Make the front & rear point this element

Step 4: Insert the element at the end of the queue and shift the rear pointer to the lately added element.

Algorithm for deletion of any element from the queue

Step 1: verify for Queue empty condition. If queue is empty, then go to step 2, else go to step 3

Step 2: Message "Queue Empty"

Step 3: Delete the element through the front of the queue. If in the queue it is the last element, then carry out step a else step b

a) make front & rear point to null

b) Shift the front pointer further on to point to the next element in the queue


Related Discussions:- Implementation of queue

Binary tree, A binary tree is a tree data structures in which each node hav...

A binary tree is a tree data structures in which each node have at most two child nodes, generally distinguished as "right" and "left". Nodes with children are called parent nodes,

All pairs shortest paths, N = number of rows of the graph D[i[j] = C[i][...

N = number of rows of the graph D[i[j] = C[i][j] For k from 1 to n Do for i = 1 to n Do for j = 1 to n D[i[j]= minimum( d ij (k-1) ,d ik (k-1) +d kj (k-1)

Algorithm to evaluate expression given in postfix notation , Q. Write down ...

Q. Write down an algorithm to evaluate an expression given to you in postfix notation. Show the execution of your algorithm for the following given expression. AB^CD-EF/GH+/+*

Comparisons between linear and binary search, Comparative Study of Linear a...

Comparative Study of Linear and Binary Search Binary search is lots quicker than linear search. Some comparisons are following: NUMBER OF ARRAY ELEMENTS EXAMINED array

Define heap, HEAP  A heap is described to be a binary tree with a key i...

HEAP  A heap is described to be a binary tree with a key in every node, such that  1-All the leaves of the tree are on 2 adjacent levels. 2- All leaves on the lowest leve

State about the simple types - built-in types, State about the Simple types...

State about the Simple types - Built-In Types Values of the carrier set are atomic, that is, they can't be divided into parts. Common illustrations of simple types are inte

Stack, Explain in detail the algorithmic implementation of multiple stacks....

Explain in detail the algorithmic implementation of multiple stacks.

Describe commonly used asymptotic notations, Q.1 Compare two functions n 2 ...

Q.1 Compare two functions n 2 and 2 n for various values of n. Determine when second becomes larger than first. Q.2 Why do we use asymptotic notation in the study of algorit

Define linked list ?, Linked lists are among the most common and easiest da...

Linked lists are among the most common and easiest data structures. They may be used to implement various other common abstract data types, including queues, stacks, symbolic expre

What is keyed access- container, What is Keyed Access- Container A c...

What is Keyed Access- Container A collection may allow its elements to be accessed by keys. For instance, maps are unstructured containers which allows their elements to be

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