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 is the first one to be removed.
Queues are used in various contexts, such as managing incoming requests in a server, handling incoming events in an event-driven system, and scheduling tasks in an operating system.
Queue operations include enqueue (adding an element to the end of the queue), dequeue (removing the element from the front of the queue), and peek (accessing the front element without removing it).
Queues can be implemented using arrays or linked lists, depending on the specific requirements of the use case.