{"id":8836,"date":"2022-06-28T12:44:11","date_gmt":"2022-06-28T12:44:11","guid":{"rendered":"https:\/\/www.prepbytes.com\/blog\/?p=8836"},"modified":"2023-04-13T06:15:44","modified_gmt":"2023-04-13T06:15:44","slug":"applications-of-queue-data-structure","status":"publish","type":"post","link":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/","title":{"rendered":"Applications of Queue in Data Structure"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656308485064-Article%20%281%29.jpg\" alt=\"\" \/><\/p>\n<p>Queues are essential in the data structure, used to manage collections of elements that need to be processed in a particular order. They have multiple applications in operating systems, network protocols and other application of queue in data structure.<\/p>\n<h2>What is Queue in Data Structures?<\/h2>\n<p>A queue is a linear data structure that follows the First-In-First-Out (FIFO) principle, meaning that the first element added to the queue will be the first one removed. Queues are commonly used in computer science for managing and organizing data in a specific order.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656063394897-Image-01%20%281%29.png\" alt=\"\" \/><\/p>\n<h2>Basic Operations of Queue in Data Structure<\/h2>\n<ul>\n<li><strong>Enqueue:<\/strong> This function is used to add an element to the rear end of the queue. If the queue is filled, then it will be in an overflow condition. The time complexity of the enqueue is O(1).<\/li>\n<li><strong>Dequeue:<\/strong> This function is used to remove an element from the front end of the queue. If the queue is empty, then it will be in an underflow condition. The time complexity of the dequeue is O(1).<\/li>\n<li><strong>Front:<\/strong> This function returns the front element of the queue. The time complexity of this function is O(1).<\/li>\n<li><strong>Rear:<\/strong> This function returns the last element of the queue. The time complexity of this function is O(1).<\/li>\n<li><strong>Peek():<\/strong> This operation is used to get the value of the element from the front of the queue.<\/li>\n<\/ul>\n<h2>Types of Queues in Data Structures<\/h2>\n<p>There are four types of queues in data structures:<\/p>\n<ul>\n<li><strong>Simple Queue:<\/strong> In a Simple queue, insertion of the element takes place at the rear end i.e. ENQUEUE and removal of the element takes place at the front end i.e. DEQUEUE. The simple queue is also called a linear queue.<\/li>\n<li><strong>Circular Queue:<\/strong> In a circular queue, the elements act like circular rings. The working of a circular queue is similar to a simple queue but in a circular queue, the element in the last position is connected to the element in the first position. The main advantage of a circular queue is that the memory will be utilized in a better way.<\/li>\n<li><strong>Priority Queue:<\/strong> In a priority queue, the elements are stored according to their priority, Based on the priority of elements we\u2019ll set our queue accordingly i.e. in ascending order or in descending order.<\/li>\n<li><strong>Dequeue:<\/strong> Dequeue is known as a double-ended queue. In dequeue, the elements can be inserted or removed from both ends.Due to this property, the dequeue may not follow the first in first out property<\/li>\n<\/ul>\n<h2>Implementation of Queue using Arrays<\/h2>\n<p>For the implementation of queue using arrays, we need to initialize two pointers i.e. front and rear, we insert an element from the rear and remove the element from the front, and if we increment the rear and front pointers we may occur error, Due to this, the front pointer may reach the end.<br \/>\nThe solution to the above problem is to increase the front and rear pointers circularly.<\/p>\n<p><strong>Enqueue Operation \/ Insertion:<\/strong><\/p>\n<ul>\n<li>First, check if the queue is full or not.<\/li>\n<li>For the first element, set the FRONT pointer to 0.<\/li>\n<li>Increment the REAR index by 1.<\/li>\n<li>Add the new element in the position which was pointed by REAR.<\/li>\n<\/ul>\n<p><strong>Dequeue Operation \/ Remove:<\/strong><\/p>\n<ul>\n<li>First, check if the queue is empty or not.<\/li>\n<li>Return the value which was pointed by FRONT.<\/li>\n<li>Increment the FRONT index by 1.<\/li>\n<li>For the last element, reset the values of FRONT and REAR to -1.<\/li>\n<\/ul>\n\t\t\t\t\t\t<style>\r\n\t\t\t\t\r\n\t\t\t\t\t#tab_container_10251 {\r\n\toverflow:hidden;\r\n\tdisplay:block;\r\n\twidth:100%;\r\n\tborder:0px solid #ddd;\r\n\tmargin-bottom:30px;\r\n\t}\r\n\r\n#tab_container_10251 .tab-content{\r\n\tpadding:20px;\r\n\tborder: 1px solid #e6e6e6 !important;\r\n\tmargin-top: 0px;\r\n\tbackground-color:#ffffff !important;\r\n\tcolor: #000000 !important;\r\n\tfont-size:16px !important;\r\n\tfont-family: Open Sans !important;\r\n\t\r\n\t\tborder: 1px solid #e6e6e6 !important;\r\n\t}\r\n#tab_container_10251 .wpsm_nav-tabs {\r\n    border-bottom: 0px solid #ddd;\r\n}\r\n#tab_container_10251 .wpsm_nav-tabs > li.active > a, #tab_container_10251 .wpsm_nav-tabs > li.active > a:hover, #tab_container_10251 .wpsm_nav-tabs > li.active > a:focus {\r\n\tcolor: #000000 !important;\r\n\tcursor: default;\r\n\tbackground-color: #ffffff !important;\r\n\tborder: 1px solid #e6e6e6 !important;\r\n}\r\n\r\n#tab_container_10251 .wpsm_nav-tabs > li > a {\r\n    margin-right: 0px !important; \r\n    line-height: 1.42857143 !important;\r\n    border: 1px solid #d5d5d5 !important;\r\n    border-radius: 0px 0px 0 0 !important; \r\n\tbackground-color: #e8e8e8 !important;\r\n\tcolor: #000000 !important;\r\n\tpadding: 15px 18px 15px 18px !important;\r\n\ttext-decoration: none !important;\r\n\tfont-size: 14px !important;\r\n\ttext-align:center !important;\r\n\tfont-family: Open Sans !important;\r\n}\r\n#tab_container_10251 .wpsm_nav-tabs > li > a:focus {\r\noutline: 0px !important;\r\n}\r\n\r\n#tab_container_10251 .wpsm_nav-tabs > li > a:before {\r\n\tdisplay:none !important;\r\n}\r\n#tab_container_10251 .wpsm_nav-tabs > li > a:after {\r\n\tdisplay:none !important ;\r\n}\r\n#tab_container_10251 .wpsm_nav-tabs > li{\r\npadding:0px !important ;\r\nmargin:0px;\r\n}\r\n\r\n#tab_container_10251 .wpsm_nav-tabs > li > a:hover , #tab_container_10251 .wpsm_nav-tabs > li > a:focus {\r\n    color: #000000 !important;\r\n    background-color: #e8e8e8 !important;\r\n\tborder: 1px solid #d5d5d5 !important;\r\n\t\r\n}\r\n#tab_container_10251 .wpsm_nav-tabs > li > a .fa{\r\n\r\nmargin-right:5px !important;\r\n\r\nmargin-left:5px !important;\r\n\r\n\r\n}\r\n\r\n\t\t#tab_container_10251 .wpsm_nav-tabs a{\r\n\t\t\tbackground-image: none;\r\n\t\t\tbackground-position: 0 0;\r\n\t\t\tbackground-repeat: repeat-x;\r\n\t\t}\r\n\t\t\t\r\n\r\n\r\n#tab_container_10251 .wpsm_nav-tabs > li {\r\n    float: left;\r\n    margin-bottom: -1px !important;\r\n\tmargin-right:0px !important; \r\n}\r\n\r\n\r\n#tab_container_10251 .tab-content{\r\noverflow:hidden !important;\r\n}\r\n\r\n\r\n@media (min-width: 769px) {\r\n\r\n\t#tab_container_10251 .wpsm_nav-tabs > li{\r\n\t\tfloat:left !important ;\r\n\t\t\t\tmargin-right:-1px !important;\r\n\t\t\t\t\t}\r\n\t#tab_container_10251 .wpsm_nav-tabs{\r\n\t\tfloat:none !important;\r\n\t\tmargin:0px !important;\r\n\t}\r\n\r\n\t#tab_container_10251 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_10251 .wpsm_nav{\r\n\t\t\t}\r\n\r\n}\r\n\r\n\r\n\r\n@media (max-width: 768px) {\r\n\t#tab_container_10251 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_10251 .wpsm_nav{\r\n\t\t\t}\r\n}\r\n\r\n\r\n\t.wpsm_nav-tabs li:before{\r\n\t\tdisplay:none !important;\r\n\t}\r\n\r\n\t@media (max-width: 768px) {\r\n\t\t\t\t\r\n\t\t\t\t.wpsm_nav-tabs{\r\n\t\t\tmargin-left:0px !important;\r\n\t\t\tmargin-right:0px !important; \r\n\t\t\t\r\n\t\t}\r\n\t\t\t\t#tab_container_10251 .wpsm_nav-tabs > li{\r\n\t\t\tfloat:none !important;\r\n\t\t}\r\n\t\t\t\r\n\t}\t\t\t\t<\/style>\r\n\t\t\t\t<div id=\"tab_container_10251\" >\r\n\t \r\n\t\t\t\t\t<ul class=\"wpsm_nav wpsm_nav-tabs\" role=\"tablist\" id=\"myTab_10251\">\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  class=\"active\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_10251_1\" aria-controls=\"tabs_desc_10251_1\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>C<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_10251_2\" aria-controls=\"tabs_desc_10251_2\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>C++<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_10251_3\" aria-controls=\"tabs_desc_10251_3\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>Java<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_10251_4\" aria-controls=\"tabs_desc_10251_4\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>Python<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\t\t\t\t <\/ul>\r\n\r\n\t\t\t\t\t  <!-- Tab panes -->\r\n\t\t\t\t\t  <div class=\"tab-content\" id=\"tab-content_10251\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane  in active \" id=\"tabs_desc_10251_1\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"c\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"c\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n#include <limits.h>\r\n#include <stdio.h>\r\n#include <stdlib.h>\r\n \r\nstruct Queue {\r\n\tint front, rear, size;\r\n\tunsigned capacity;\r\n\tint* array;\r\n};\r\nstruct Queue* createQueue(unsigned capacity)\r\n{\r\n\tstruct Queue* queue = (struct Queue*)malloc(\r\n\t\tsizeof(struct Queue));\r\n\tqueue->capacity = capacity;\r\n\tqueue->front = queue->size = 0;\r\n \r\n \r\n\tqueue->rear = capacity - 1;\r\n\tqueue->array = (int*)malloc(\r\n\t\tqueue->capacity * sizeof(int));\r\n\treturn queue;\r\n}\r\n \r\nint isFull(struct Queue* queue)\r\n{\r\n\treturn (queue->size == queue->capacity);\r\n}\r\n \r\nint isEmpty(struct Queue* queue)\r\n{\r\n\treturn (queue->size == 0);\r\n}\r\n \r\nvoid enqueue(struct Queue* queue, int item)\r\n{\r\n\tif (isFull(queue))\r\n\t\treturn;\r\n\tqueue->rear = (queue->rear + 1)\r\n\t\t\t\t% queue->capacity;\r\n\tqueue->array[queue->rear] = item;\r\n\tqueue->size = queue->size + 1;\r\n\tprintf(\"%d enqueued to queue&#92;n\", item);\r\n}\r\n \r\nint dequeue(struct Queue* queue)\r\n{\r\n\tif (isEmpty(queue))\r\n\t\treturn INT_MIN;\r\n\tint item = queue->array[queue->front];\r\n\tqueue->front = (queue->front + 1)\r\n\t\t\t\t% queue->capacity;\r\n\tqueue->size = queue->size - 1;\r\n\treturn item;\r\n}\r\n \r\nint front(struct Queue* queue)\r\n{\r\n\tif (isEmpty(queue))\r\n\t\treturn INT_MIN;\r\n\treturn queue->array[queue->front];\r\n}\r\n \r\nint rear(struct Queue* queue)\r\n{\r\n\tif (isEmpty(queue))\r\n\t\treturn INT_MIN;\r\n\treturn queue->array[queue->rear];\r\n}\r\n \r\nint main()\r\n{\r\n\tstruct Queue* queue = createQueue(1000);\r\n \r\n\tenqueue(queue, 1);\r\n\tenqueue(queue, 2);\r\n\tenqueue(queue, 3);\r\n\tenqueue(queue, 4);\r\n \r\n\tprintf(\"%d dequeued from queue&#92;n&#92;n\",\r\n\t\tdequeue(queue));\r\n \r\n\tprintf(\"Front item is %d&#92;n\", front(queue));\r\n\tprintf(\"Rear item is %d&#92;n\", rear(queue));\r\n \r\n\treturn 0;\r\n}\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_10251_2\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"cpp\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n\r\n\r\n#include &lt;bits\/stdc++.h&gt;\r\nusing namespace std;\r\n\r\n\r\nclass Queue {\r\npublic:\r\n\tint front, rear, size;\r\n\tunsigned capacity;\r\n\tint* array;\r\n};\r\n\r\nQueue* createQueue(unsigned capacity)\r\n{\r\n\tQueue* queue = new Queue();\r\n\tqueue-&gt;capacity = capacity;\r\n\tqueue-&gt;front = queue-&gt;size = 0;\r\n\r\n\tqueue-&gt;rear = capacity - 1;\r\n\tqueue-&gt;array = new int[queue-&gt;capacity];\r\n\treturn queue;\r\n}\r\n\r\nint isFull(Queue* queue)\r\n{\r\n\treturn (queue-&gt;size == queue-&gt;capacity);\r\n}\r\n\r\nint isEmpty(Queue* queue)\r\n{\r\n\treturn (queue-&gt;size == 0);\r\n}\r\n\r\nvoid enqueue(Queue* queue, int item)\r\n{\r\n\tif (isFull(queue))\r\n\t\treturn;\r\n\tqueue-&gt;rear = (queue-&gt;rear + 1)\r\n\t\t\t\t% queue-&gt;capacity;\r\n\tqueue-&gt;array[queue-&gt;rear] = item;\r\n\tqueue-&gt;size = queue-&gt;size + 1;\r\n\tcout &lt;&lt; item &lt;&lt; &quot; enqueued to queue&#92;n&quot;;\r\n}\r\n\r\nint dequeue(Queue* queue)\r\n{\r\n\tif (isEmpty(queue))\r\n\t\treturn INT_MIN;\r\n\tint item = queue-&gt;array[queue-&gt;front];\r\n\tqueue-&gt;front = (queue-&gt;front + 1)\r\n\t\t\t\t% queue-&gt;capacity;\r\n\tqueue-&gt;size = queue-&gt;size - 1;\r\n\treturn item;\r\n}\r\n\r\nint front(Queue* queue)\r\n{\r\n\tif (isEmpty(queue))\r\n\t\treturn INT_MIN;\r\n\treturn queue-&gt;array[queue-&gt;front];\r\n}\r\n\r\nint rear(Queue* queue)\r\n{\r\n\tif (isEmpty(queue))\r\n\t\treturn INT_MIN;\r\n\treturn queue-&gt;array[queue-&gt;rear];\r\n}\r\n\r\nint main()\r\n{\r\n\tQueue* queue = createQueue(1000);\r\n\r\n\tenqueue(queue, 1);\r\n\tenqueue(queue, 2);\r\n\tenqueue(queue, 3);\r\n\tenqueue(queue, 4);\r\n\r\n\tcout &lt;&lt; dequeue(queue)\r\n\t\t&lt;&lt; &quot; dequeued from queue&#92;n&quot;;\r\n\r\n\tcout &lt;&lt; &quot;Front item is &quot;\r\n\t\t&lt;&lt; front(queue) &lt;&lt; endl;\r\n\tcout &lt;&lt; &quot;Rear item is &quot;\r\n\t\t&lt;&lt; rear(queue) &lt;&lt; endl;\r\n\r\n\treturn 0;\r\n}\r\n\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_10251_3\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"java\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n\r\nclass Queue {\r\n\tint front, rear, size;\r\n\tint capacity;\r\n\tint array[];\r\n\r\n\tpublic Queue(int capacity)\r\n\t{\r\n\t\tthis.capacity = capacity;\r\n\t\tfront = this.size = 0;\r\n\t\trear = capacity - 1;\r\n\t\tarray = new int[this.capacity];\r\n\t}\r\n\r\n\tboolean isFull(Queue queue)\r\n\t{\r\n\t\treturn (queue.size == queue.capacity);\r\n\t}\r\n\r\n\tboolean isEmpty(Queue queue)\r\n\t{\r\n\t\treturn (queue.size == 0);\r\n\t}\r\n\r\n\tvoid enqueue(int item)\r\n\t{\r\n\t\tif (isFull(this))\r\n\t\t\treturn;\r\n\t\tthis.rear = (this.rear + 1)\r\n\t\t\t\t\t% this.capacity;\r\n\t\tthis.array[this.rear] = item;\r\n\t\tthis.size = this.size + 1;\r\n\t\tSystem.out.println(item\r\n\t\t\t\t\t\t+ \" enqueued to queue\");\r\n\t}\r\n\r\n\r\n\tint dequeue()\r\n\t{\r\n\t\tif (isEmpty(this))\r\n\t\t\treturn Integer.MIN_VALUE;\r\n\r\n\t\tint item = this.array[this.front];\r\n\t\tthis.front = (this.front + 1)\r\n\t\t\t\t\t% this.capacity;\r\n\t\tthis.size = this.size - 1;\r\n\t\treturn item;\r\n\t}\r\n\r\n\tint front()\r\n\t{\r\n\t\tif (isEmpty(this))\r\n\t\t\treturn Integer.MIN_VALUE;\r\n\r\n\t\treturn this.array[this.front];\r\n\t}\r\n\r\n\tint rear()\r\n\t{\r\n\t\tif (isEmpty(this))\r\n\t\t\treturn Integer.MIN_VALUE;\r\n\r\n\t\treturn this.array[this.rear];\r\n\t}\r\n}\r\n\r\nclass Test {\r\n\tpublic static void main(String[] args)\r\n\t{\r\n\t\tQueue queue = new Queue(1000);\r\n\r\n\t\tqueue.enqueue(1);\r\n\t\tqueue.enqueue(2);\r\n\t\tqueue.enqueue(3);\r\n\t\tqueue.enqueue(4);\r\n\r\n\t\tSystem.out.println(queue.dequeue()\r\n\t\t\t\t\t\t+ \" dequeued from queue&#92;n\");\r\n\r\n\t\tSystem.out.println(\"Front item is \"\r\n\t\t\t\t\t\t+ queue.front());\r\n\r\n\t\tSystem.out.println(\"Rear item is \"\r\n\t\t\t\t\t\t+ queue.rear());\r\n\t}\r\n}\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_10251_4\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"python\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n\r\nclass Queue:\r\n\r\n\t# __init__ function\r\n\tdef __init__(self, capacity):\r\n\t\tself.front = self.size = 0\r\n\t\tself.rear = capacity -1\r\n\t\tself.Q = [None]*capacity\r\n\t\tself.capacity = capacity\r\n\r\n\tdef isFull(self):\r\n\t\treturn self.size == self.capacity\r\n\t\r\n\r\n\tdef isEmpty(self):\r\n\t\treturn self.size == 0\r\n\r\n\tdef EnQueue(self, item):\r\n\t\tif self.isFull():\r\n\t\t\tprint(\"Full\")\r\n\t\t\treturn\r\n\t\tself.rear = (self.rear + 1) % (self.capacity)\r\n\t\tself.Q[self.rear] = item\r\n\t\tself.size = self.size + 1\r\n\t\tprint(\"% s enqueued to queue\" % str(item))\r\n\r\n\r\n\tdef DeQueue(self):\r\n\t\tif self.isEmpty():\r\n\t\t\tprint(\"Empty\")\r\n\t\t\treturn\r\n\t\t\r\n\t\tprint(\"% s dequeued from queue\" % str(self.Q[self.front]))\r\n\t\tself.front = (self.front + 1) % (self.capacity)\r\n\t\tself.size = self.size -1\r\n\t\t\r\n\tdef que_front(self):\r\n\t\tif self.isEmpty():\r\n\t\t\tprint(\"Queue is empty\")\r\n\r\n\t\tprint(\"Front item is\", self.Q[self.front])\r\n\t\t\r\n\tdef que_rear(self):\r\n\t\tif self.isEmpty():\r\n\t\t\tprint(\"Queue is empty\")\r\n\t\tprint(\"Rear item is\", self.Q[self.rear])\r\n\r\n\r\nif __name__ == '__main__':\r\n\r\n\tqueue = Queue(30)\r\n\tqueue.EnQueue(1)\r\n\tqueue.EnQueue(2)\r\n\tqueue.EnQueue(3)\r\n\tqueue.EnQueue(4)\r\n\tqueue.DeQueue()\r\n\tqueue.que_front()\r\n\tqueue.que_rear()\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t <\/div>\r\n\t\t\t\t\t \r\n\t\t\t\t <\/div>\r\n <script>\r\n\t\tjQuery(function () {\r\n\t\t\tjQuery('#myTab_10251 a:first').tab('show')\r\n\t\t});\r\n\t\t\r\n\t\t\t\tjQuery(function(){\r\n\t\t\tvar b=\"fadeIn\";\r\n\t\t\tvar c;\r\n\t\t\tvar a;\r\n\t\t\td(jQuery(\"#myTab_10251 a\"),jQuery(\"#tab-content_10251\"));function d(e,f,g){\r\n\t\t\t\te.click(function(i){\r\n\t\t\t\t\ti.preventDefault();\r\n\t\t\t\t\tjQuery(this).tab(\"show\");\r\n\t\t\t\t\tvar h=jQuery(this).data(\"easein\");\r\n\t\t\t\t\tif(c){c.removeClass(a);}\r\n\t\t\t\t\tif(h){f.find(\"div.active\").addClass(\"animated \"+h);a=h;}\r\n\t\t\t\t\telse{if(g){f.find(\"div.active\").addClass(\"animated \"+g);a=g;}else{f.find(\"div.active\").addClass(\"animated \"+b);a=b;}}c=f.find(\"div.active\");\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t\t\r\n\r\n\t\tfunction do_resize(){\r\n\r\n\t\t\tvar width=jQuery( '.tab-content .tab-pane iframe' ).width();\r\n\t\t\tvar height=jQuery( '.tab-content .tab-pane iframe' ).height();\r\n\r\n\t\t\tvar toggleSize = true;\r\n\t\t\tjQuery('iframe').animate({\r\n\t\t\t    width: toggleSize ? width : 640,\r\n\t\t\t    height: toggleSize ? height : 360\r\n\t\t\t  }, 250);\r\n\r\n\t\t\t  toggleSize = !toggleSize;\r\n\t\t}\r\n\r\n\r\n\t<\/script>\r\n\t\t\t\t\r\n\t\t\t\n<p><strong>Time Complexity:<\/strong><\/p>\n<ul>\n<li><strong>Enqueue: O(1)<\/strong><\/li>\n<li><strong>Dequeue: O(1)<\/strong><\/li>\n<li><strong>Front: O(1)<\/strong><\/li>\n<li><strong>Rear: O(1)<\/strong><\/li>\n<\/ul>\n<p><strong>Space Complexity:<\/strong><br \/>\n<strong>O(N) where N is the size of the array.<\/strong><\/p>\n<h2>Some of the Application of Queue in Data Structure<\/h2>\n<p>Here are some of the common application of queue in data structure:<\/p>\n<ul>\n<li>Queues can be used to schedule jobs and ensure that they are executed in the correct order.<\/li>\n<li>Queues can be used to manage the order in which print jobs are sent to the printer.<\/li>\n<li>Queues are used to implement the breadth-first search algorithm.<\/li>\n<li>Queues can be used to manage incoming calls and ensure that they are handled in the correct order.<\/li>\n<li>Queues can be used to manage the order in which processes are executed on the CPU.<\/li>\n<li>Queues can be used for buffering data while it is being transferred between two systems. When data is received, it is added to the back of the queue, and when data is sent, it is removed from the front of the queue.<\/li>\n<\/ul>\n<h2>Other Application of Queue in Data Structure<\/h2>\n<p>Some other application of queue in data structure:<\/p>\n<ul>\n<li>Applied as buffers on playing music in the mp3 players or CD players.<\/li>\n<li>Applied on handling the interruption in the operating system.<\/li>\n<li>Applied to add a song at the end of the playlist.<\/li>\n<li>Applied as the waiting queue for using the single shared resources like CPU, Printers, or Disk.<\/li>\n<li>Applied to the chat application when someone sends messages to us and we don\u2019t have an internet connection then the messages are stored in the server of the chat application<\/li>\n<\/ul>\n<h2>Application of Queue in Networks<\/h2>\n<p>Some of the applications of the queue in networks:<\/p>\n<ul>\n<li>The switches and routers play an important part in networks and we can use queues with them.<\/li>\n<li>There are various mail queues in networks.<\/li>\n<li>In networks, we can use a variety of queues like Priority Queue, Deque, etc.<\/li>\n<\/ul>\n<h2>Application of Queue in Operating System<\/h2>\n<p>Some of the applications of the queue in OS:<\/p>\n<ul>\n<li>They can be used for algorithms like First Come First Serve(FCFS).<\/li>\n<li>It is used as a buffer for input devices like the Keyboard.<\/li>\n<li>It is also used for CPU Scheduling.<\/li>\n<li>It is widely used for spooling in Printers.<\/li>\n<li>Queues are also used in Memory Management.<\/li>\n<\/ul>\n<p><strong>Conclusion<\/strong><br \/>\nIn conclusion,  application of queue in data structure are widely used in computer science to manage and organize data in a specific order. They follow the FIFO principle and can be implemented using arrays or linked lists. Queues have numerous applications, including job scheduling, printer spooling, breadth-first search, call centre management, CPU task management, and buffering. Queues are essential tools for efficiently managing and organizing data in a way that ensures tasks are executed in the correct order.<\/p>\n<h2>Frequently Asked questions(FAQs)<\/h2>\n<p><strong>Q1. What is the queue Data structure?<\/strong><br \/>\n<strong>Ans:<\/strong> queue is defined as the ordered list in which insertion and deletion are performed at two different ends i.e. REAR and FRONT end.<\/p>\n<p><strong>Q2. What are the types of queue data structures?<\/strong><br \/>\n<strong>Ans:<\/strong> There are four types of queue data structures:<\/p>\n<ul>\n<li>Simple queue<\/li>\n<li>Circular queue<\/li>\n<li>Priority queue<\/li>\n<li>Dequeue<\/li>\n<\/ul>\n<p><strong>Q3. What are the REAR and FRONT end?<\/strong><br \/>\n<strong>Ans:<\/strong> Queue is a collection of elements that are added at one end called \u201cREAR\u201d and removed from the other end called \u201cFRONT\u201d.<\/p>\n<p><strong>Q4. How do queues optimize the management of data?<\/strong><br \/>\n<strong>Ans:<\/strong> Queues optimize the management of data by ensuring that tasks or data are executed or processed in the correct order. By following the FIFO principle, queues make it easy to organize and manage data based on the order in which it was received.<\/p>\n<p><strong>Q5. What are the applications of a queue in data structures?<\/strong><br \/>\n<strong>Ans:<\/strong> Queues have various applications in computer science and information technology. Some of the commonly used applications are:<\/p>\n<ul>\n<li>CPU scheduling in operating systems<\/li>\n<li>Network packet scheduling<\/li>\n<li>Printer job scheduling<\/li>\n<li>Breadth-First Search (BFS) algorithm<\/li>\n<li>Simulation modeling<\/li>\n<li>Traffic management in communication networks<\/li>\n<li>Call center management<\/li>\n<li>Web server request handling<\/li>\n<li>Bank teller management<\/li>\n<li>Producer-consumer problem<\/li>\n<\/ul>\n<p>Also, You can checkout given below Queue Articles for better understanding:<br \/>\n<a href=\"https:\/\/prepbytes.com\/blog\/queues\/advantages-of-circular-queue-over-linear-queue\/\" title=\"1. Advantages of circular queue\">1. Advantages of circular queue<\/a><br \/>\n<a href=\"https:\/\/prepbytes.com\/blog\/queues\/difference-between-linear-queue-and-circular-queue\/\" title=\"2. Difference between linear queue and circular queue\">2. Difference between linear queue and circular queue<\/a><br \/>\n<a href=\"https:\/\/prepbytes.com\/blog\/queues\/reversing-a-queue\/\" title=\"3. Reverse a queue\">3. Reverse a queue<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Queues are essential in the data structure, used to manage collections of elements that need to be processed in a particular order. They have multiple applications in operating systems, network protocols and other application of queue in data structure. What is Queue in Data Structures? A queue is a linear data structure that follows the [&hellip;]<\/p>\n","protected":false},"author":52,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[128],"tags":[],"class_list":["post-8836","post","type-post","status-publish","format-standard","hentry","category-queues"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Applications of Queue Data Structure - Prepbytes<\/title>\n<meta name=\"description\" content=\"Check useful application of queue like in networks, there are mail queues, in operating systems, queues are used in Semaphores, Spooling in printers &amp; more.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Applications of Queue Data Structure - Prepbytes\" \/>\n<meta property=\"og:description\" content=\"Check useful application of queue like in networks, there are mail queues, in operating systems, queues are used in Semaphores, Spooling in printers &amp; more.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/\" \/>\n<meta property=\"og:site_name\" content=\"PrepBytes Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prepbytes0211\/\" \/>\n<meta property=\"article:published_time\" content=\"2022-06-28T12:44:11+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-04-13T06:15:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656308485064-Article%20%281%29.jpg\" \/>\n<meta name=\"author\" content=\"Prepbytes\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Prepbytes\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/\"},\"author\":{\"name\":\"Prepbytes\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e\"},\"headline\":\"Applications of Queue in Data Structure\",\"datePublished\":\"2022-06-28T12:44:11+00:00\",\"dateModified\":\"2023-04-13T06:15:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/\"},\"wordCount\":1255,\"commentCount\":0,\"publisher\":{\"@id\":\"http:\/\/43.205.93.38\/#organization\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656308485064-Article%20%281%29.jpg\",\"articleSection\":[\"Queues\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/\",\"url\":\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/\",\"name\":\"Applications of Queue Data Structure - Prepbytes\",\"isPartOf\":{\"@id\":\"http:\/\/43.205.93.38\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656308485064-Article%20%281%29.jpg\",\"datePublished\":\"2022-06-28T12:44:11+00:00\",\"dateModified\":\"2023-04-13T06:15:44+00:00\",\"description\":\"Check useful application of queue like in networks, there are mail queues, in operating systems, queues are used in Semaphores, Spooling in printers & more.\",\"breadcrumb\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#primaryimage\",\"url\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656308485064-Article%20%281%29.jpg\",\"contentUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656308485064-Article%20%281%29.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"http:\/\/43.205.93.38\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Queues\",\"item\":\"https:\/\/prepbytes.com\/blog\/category\/queues\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Applications of Queue in Data Structure\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\/\/43.205.93.38\/#website\",\"url\":\"http:\/\/43.205.93.38\/\",\"name\":\"PrepBytes Blog\",\"description\":\"ONE-STOP RESOURCE FOR EVERYTHING RELATED TO CODING\",\"publisher\":{\"@id\":\"http:\/\/43.205.93.38\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\/\/43.205.93.38\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"http:\/\/43.205.93.38\/#organization\",\"name\":\"Prepbytes\",\"url\":\"http:\/\/43.205.93.38\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp\",\"contentUrl\":\"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp\",\"width\":160,\"height\":160,\"caption\":\"Prepbytes\"},\"image\":{\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/prepbytes0211\/\",\"https:\/\/www.instagram.com\/prepbytes\/\",\"https:\/\/www.linkedin.com\/company\/prepbytes\/\",\"https:\/\/www.youtube.com\/channel\/UC0xGnHDrjUM1pDEK2Ka5imA\"]},{\"@type\":\"Person\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e\",\"name\":\"Prepbytes\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g\",\"caption\":\"Prepbytes\"},\"url\":\"https:\/\/prepbytes.com\/blog\/author\/gourav-jaincollegedekho-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Applications of Queue Data Structure - Prepbytes","description":"Check useful application of queue like in networks, there are mail queues, in operating systems, queues are used in Semaphores, Spooling in printers & more.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/","og_locale":"en_US","og_type":"article","og_title":"Applications of Queue Data Structure - Prepbytes","og_description":"Check useful application of queue like in networks, there are mail queues, in operating systems, queues are used in Semaphores, Spooling in printers & more.","og_url":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/","og_site_name":"PrepBytes Blog","article_publisher":"https:\/\/www.facebook.com\/prepbytes0211\/","article_published_time":"2022-06-28T12:44:11+00:00","article_modified_time":"2023-04-13T06:15:44+00:00","og_image":[{"url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656308485064-Article%20%281%29.jpg","type":"","width":"","height":""}],"author":"Prepbytes","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Prepbytes","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#article","isPartOf":{"@id":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/"},"author":{"name":"Prepbytes","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e"},"headline":"Applications of Queue in Data Structure","datePublished":"2022-06-28T12:44:11+00:00","dateModified":"2023-04-13T06:15:44+00:00","mainEntityOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/"},"wordCount":1255,"commentCount":0,"publisher":{"@id":"http:\/\/43.205.93.38\/#organization"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656308485064-Article%20%281%29.jpg","articleSection":["Queues"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/","url":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/","name":"Applications of Queue Data Structure - Prepbytes","isPartOf":{"@id":"http:\/\/43.205.93.38\/#website"},"primaryImageOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#primaryimage"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656308485064-Article%20%281%29.jpg","datePublished":"2022-06-28T12:44:11+00:00","dateModified":"2023-04-13T06:15:44+00:00","description":"Check useful application of queue like in networks, there are mail queues, in operating systems, queues are used in Semaphores, Spooling in printers & more.","breadcrumb":{"@id":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#primaryimage","url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656308485064-Article%20%281%29.jpg","contentUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1656308485064-Article%20%281%29.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/prepbytes.com\/blog\/applications-of-queue-data-structure\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"http:\/\/43.205.93.38\/"},{"@type":"ListItem","position":2,"name":"Queues","item":"https:\/\/prepbytes.com\/blog\/category\/queues\/"},{"@type":"ListItem","position":3,"name":"Applications of Queue in Data Structure"}]},{"@type":"WebSite","@id":"http:\/\/43.205.93.38\/#website","url":"http:\/\/43.205.93.38\/","name":"PrepBytes Blog","description":"ONE-STOP RESOURCE FOR EVERYTHING RELATED TO CODING","publisher":{"@id":"http:\/\/43.205.93.38\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/43.205.93.38\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"http:\/\/43.205.93.38\/#organization","name":"Prepbytes","url":"http:\/\/43.205.93.38\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/","url":"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp","contentUrl":"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp","width":160,"height":160,"caption":"Prepbytes"},"image":{"@id":"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/prepbytes0211\/","https:\/\/www.instagram.com\/prepbytes\/","https:\/\/www.linkedin.com\/company\/prepbytes\/","https:\/\/www.youtube.com\/channel\/UC0xGnHDrjUM1pDEK2Ka5imA"]},{"@type":"Person","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e","name":"Prepbytes","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g","caption":"Prepbytes"},"url":"https:\/\/prepbytes.com\/blog\/author\/gourav-jaincollegedekho-com\/"}]}},"_links":{"self":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/8836","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/users\/52"}],"replies":[{"embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/comments?post=8836"}],"version-history":[{"count":9,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/8836\/revisions"}],"predecessor-version":[{"id":15564,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/8836\/revisions\/15564"}],"wp:attachment":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/media?parent=8836"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/categories?post=8836"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/tags?post=8836"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}