Skip to main content

Queue in Data Structure

 

Queue in Data Structure

The queue data structure is linear. It follows the FIFO approach i.e. First In First Out or Last In Last Out.
In the
queue, the order of insertion is the same as the order of deletion of elements because of the FIFO approach.

Queues are mostly used whenever there is a single resource and multiple users want to use that resource. For example, in threads and CPU scheduling algorithms.

A data structure queue is analogous to a queue in real life. For example, people waiting in a queue to buy movie tickets.

Representation of a Queue

Just like a stack, the queue is also an abstract data type but it follows the FIFO approach. In the queue, we always remove the least recently added element.

A queue is open at both ends, unlike a stack. Thus we perform deletion and insertion operations at two different ends in a queue.The two ends of the queue are the Front and Rear respectively.

Front points to the index of the queue from where we can delete an element. Rear points to that index of the queue from where we insert elements.

We can represent the queue as follows:


Types of Queue

There are various types of queue data structures such as:
1. Linear queue
2. Circular queue
3. Deque
4. Priority queue

Let us see each of them in detail now:

1. Linear queue

A linear queue is a simple queue in which insertion occurs at one end and deletion occurs at the other end.
In a linear queue, we are sometimes not able to utilize memory effectively. This is because insertion can be performed only at the rear end.

Basic operations on Linear Queue:

The basic operations that we can perform on a queue are:

a. en queue (): To insert an element into the queue.

b. dequeue(): To delete an element from a queue.

c. peek(): To print/display the element at the front without deleting it.

d. isfull(): To check if the queue is full or not.

e. isempty(): To check if the queue is empty or not.

Out of the given operations, the first two operations are the most important. The rest three are used to improve the efficiency of the first two operations while implementation.

Comments

Popular posts from this blog

Top 5 pattern-in-python

  Pattern #1: 1 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1 1 2 3 4 5 4 3 2 1 code:- n = 5 for i in range(1,n+1): for j in range(1,–i): print(j,end=” “) for k in range(–i,0,-1): print(k,end=” “) print(“\n”) Pattern #2: 5 4 3 2 1 1 2 3 4 5 5 4 3 2 2 3 4 5 5 4 3 3 4 5 5 4 4 5 5 5 code:- n = 6 for i in range(0,n): for j in range(n-1,i,-1): print(j,end=” “) for k in range(i+1,n): print(k,end=” “) print(“\n”) Pattern #3: 5 5 5 5 5 4 4 4 4 3 3 3 2 2 1 code:- n = 5 for i in range(n,0,-1): for j in range(i): print(i,end=” “) print(“\n”) Pattern #4: 1 2 3 4 5 2 2 3 4 5 3 3 3 4 5 4 4 4 4 5 5 5 5 5 5 code:- n = 5 for i in range(1,n+1): for j in range(1,n+1): if j <= i: print(i, end=’ ‘) else: print(j, end=’ ‘) print() Pattern #5: 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 code:- n = 5 for i in range(n,0,-1): for j in range(i): print(n,end=” “) print(“\n”) for i in range(1,n+1): for j in range(i): print(n,end=” “) print(“\n”)

Best digital marketing in Perth

Best digital marketing in Perth Introduction Your introduction into the brave new world of the digital space will be custom-tailored to your business needs requirements. You will be introduced to the crew who will be handling your project, from inception to the launch into the market. Assess It will be our job to not only know your customers but how they engage with the core products and  brand relationships . From here we break down what we research, to identify the core elements needed to engage the customer. Create It’s imperative that the design of your vessel is done right from the start. Its shape, level of focus, and attention to detail are crucial for a prosperous, lucrative, and extended journey. We will always present concepts and suggestions as per the requirement, but we truly believe this process should be a collaborative one between the creative crew of the PWD and the client. The final form will dictate its progression into the  development  and manufacturi...

Multiple Choice Questions (MCQ) on Job Design

  1-Work Design is concerned with the _____ of work system in any type of organisation or institution. (A) Study (B) Design (C) Study and design (D) Management   2-High levels of productivity result in (A) Good quality (B) Lower costs (C) Higher purchasing power (D) All of the above   3-The following is (are) the objective(s) for studying work system. (A) Increasing productivity (B) Developing manpower effectiveness (C) Both (A) and (B) (D) None of the above   4-Job design is the consciously planned structuring of ____ performed by an individual or a team of persons. (A) Work effort (B) Duties (C) Responsibilities (D) All of the above   5-The following consideration(s) is (are) important human factor(s) relating to job design (A) Physiological (B) Social (C) Psychological (D) All of the above   6-The smallest work activities involve various elementary movements called (A) Therbligs (B) Therbilgs (C) Therblgis (D) Theriblgs   7-Vertical straight dials a...

Python Libraries a Data Scientist must know

  Top 21 Python Libraries a Data Scientist must know Python is an   abundant source   of   libraries . A Python library is a gathering of  functions  that assist one to  perform many actions . It has  myriad inbuilt   libraries . Python contains ample libraries for  data science . This tutorial covers  Python libraries  for a data scientist. 1. Data Cleaning and Data Manipulation Pandas NumPy Spacy SciPy 2. Data Gathering Beautiful Soap Scrapy Selenium 3. Data Visualisation Matplotlib Seaborn Bokeh Plotly 4. Data Modelling Scikit-Learn PyTorch TensorFlow Theano 5. Image Processing Scikit-Image Pillow OpenCV 6. Audio Processing pyAudioAnalysis Librosa Madmom

What is the process of Data Analysis?

 Data analysis   is the process of collecting, cleansing, interpreting, transforming and modeling data to gather insights and generate reports to gain business profits. Refer to the image below to know the various steps involved in the process. Fig 1:  Process of  Data Analysis – Data Analyst Interview Questions Collect Data:  The data gets collected from various sources and is stored so that it can be cleaned and prepared. In this step, all the missing values and outliers are removed. Analyse Data:  Once the data is ready, the next step is to analyze the data. A model is run repeatedly for improvements. Then, the model is validated to check whether it meets the business requirements. Create Reports:  Finally, the model is implemented, and then reports thus generated are passed onto the stakeholders.