An Abstract Data Type(ADT) defines data types only in terms of their operations, and the axioms to which those operations must adhere.
List, Stack, Queue, Set, Map, Stream are examples of ADT.
In a stack, the element deleted is the one which was recently inserted: Is is Last-in, First-out (LIFO) policy.
In a queue, the element deleted is always the one that has been for the longest time in the set. It is a First-in, First-out (FIFO) policy.
Stack
The insert operation on a stack is called Push and delete operation is called Pop.
The attempt to pop an empty stack is called underflows and if top exceeds n of the stack, it is called overflows.
Queue
The insert operation on a queue is called Enqueue and delete operation is called Dequeue. The queue has a head and tail.
When the Queue head is equal to tail, the queue is empty. When the queue head is tail+1, the queue is full.
Linked List
A linked list is a data structure in which the objects are arranged in a linear order. The order in a linked list is determined by a pointer in each object.
The linked list is an object with an attribute key and two other pointer attributes, next and prev.
If a list is sorted, the linear order of the list corresponds to the linear order of keys stored in elements of the list.