Data type -> Data structure -> Abstract data type
Abstract data type
In computer science, an abstract data type (ADT) is a mathematical model for data types, defined by its behavior (semantics) from the point of view of a user of the data, specifically in terms of possible values, possible operations on data of this type, and the behavior of these operations.
Priority Queue
In a priority queue, each element has an associated priority, which determines its order of service. Priority queue serves highest priority items first.
Stacks
last in, first out