Queue

A data structure with limited location for insertion and deletion, as with stacks.

F.I.F.O ( First In First Out)

Head & Tail

  1. Head

    : the first (the oldest) element in the queue

  2. Tail

    : the last element (the newest) in element in the queue

Enqueue & Dequeue

  1. Enqueue

    : add an element to the tail

  2. Dequeue

    : remove the head element

  3. Peek

    : look at the head element, but not removing it

Deque

: a queue that goes both ways

-> you can enqueue & dequeue from either end

-> kind of a generalized version of both stacks & queues since you could represent either of them with it!

Implementation

Priority Queue

  • assign each element a numerical priority when you insert it into the queue

  • remove the element with the highest priority when you dequeue

-> if the elements have the same priority, the oldest element is the one that gets dequeue first

Last updated

Was this helpful?