Queue is used when things don’t have to be processed immediately, but have to be processed in First In First Out order like Breadth First Search. This property of Queue makes it also useful in following kind of scenarios.
1) When a resource is shared among multiple consumers. Examples include CPU scheduling, Disk Scheduling.
2) When data is transferred asynchronously (data not necessarily received at same rate as sent) between two processes. Examples include IO Buffers, pipes, file IO, etc.
See this for more detailed applications of Queue and Stack.
- Queue using Stacks
- Find the largest multiple of 3 | Set 1 (Using Queue)
- Queue Interface In Java
- Implement a stack using single queue
- Circular Queue | Set 1 (Introduction and Array Implementation)
- Circular Queue | Set 2 (Circular Linked List Implementation)
- Queue | Set 2 (Linked List Implementation)
- Queue | Set 1 (Introduction and Array Implementation)
- Priority Queue | Set 1 (Introduction)
- Deque | Set 1 (Introduction and Applications)
- Applications of Priority Queue
- Queue based approach for first non-repeating character in a stream
- Reversing the first K elements of a Queue
- Reversing a Queue
- Interleave the first half of the queue with second half