# Difference between Linear Queue and Circular Queue ### Linear Queue

It is a linear data structure that works on the principle of FIFO (First in First out) i.e. the element which is enqueued first will be dequeued first. There is one criteria i.e. element is always added in the rear part or the end part of the queue and always deleted from the front part of the queue. The enqueue operation takes place on the rear end whereas dequeue operation takes place on the front end. Insertion of elements from the rear end in the queue is known as enqueue operation and deletion of elements from the front end of the queue is known as dequeue operation. In this queue, the rear end always lies after the front end of the queue. ### Circular Queue

It is also a linear data structure that works on the principle of FIFO (First in First out). In this type of queue element can be added in any position or can be deleted from any position in the array but we have to maintain the pointers which will point towards the front and rear end of the queue. In this queue, the rear end can be at any point in the array. ### Linear Queue vs Circular Queue

S. no. Linear Queue Circular Queue
1. In this type of queue, elements are arranged in the linear pattern. In this type of queue, elements are arranged in the circular pattern where the rear end is connected with the front end.
2. In this queue, the insertion and deletion are fixed i.e. done at the rear and front end respectively. In this queue, insertion and deletion can be done from any position. They are not fixed.
3. It Requires more memory. It requires less memory.
4. It is not very efficient in comparison to a circular queue. It is more efficient in comparison to a linear queue.
5. In this type of queue, peek value can be fetched very easily. In this type of queue, fetching the peak value is not an easy job.
6. In a linear queue, if there are 20 spaces, then in best case all the 20 spaces can be filled. In a circular queue, if there are 20 spaces, then in best case 19 spaces can be filled at a time.
7. Applications – Cars lined on a bridge. And a line on 1 counter of the bank.People standing for the bus. Applications – In CPU scheduling and memory management.Computer controlled signal
8. In this case, the element added in the first position is going to be deleted in the first position. The order of operations performed on any element is fixed i.e. FIFO. In this case, the order of operation performed on an element may change.

This article tried to discuss the Difference between Linear Queue and Circular Queue. Hope this blog helps you understand the concept. To practice more problems feel free to check MYCODE | Competitive Programming at Prepbytes.