Stack (abstract data type)
In computer science, a stack is an abstract data type that serves as a collection of elements, with two principal operations:
- push, which adds an element to the collection, and
- pop, which removes the most recently added element that was not yet removed.
The order in which elements come off a stack gives rise to its alternative name, LIFO (last in, first out).
Additionally, a peek operation may give access to the top without modifying the stack.
Queue (abstract data type)
In computer science, a queue is a collection in which the entities in the collection are kept in order and the principal (or only) operations on the collection are
- the addition of entities to the rear terminal position, known as enqueue, and
- removal of entities from the front terminal position, known as dequeue. This makes the queue a First-In-First-Out (FIFO) data structure.
- Often a peek or front operation is also entered, returning the value of the front element without dequeuing it.