What is an Abstract Data Type? What do you mean by a Dynamic Data Structure?
Abstract Data Type(ADT):
An abstract data type (ADT) is an object with a generic description independent of implementation details. This description includes a specification of the components from which the object is made and also the behavioral details of the object. Instances of abstract objects include mathematical objects (like numbers, polynomials, integrals, vectors), physical objects (like pulleys, floating bodies, missiles), animate objects (dogs, Pterodactyls, Indians) and objects (like poverty, honesty, inflation) that are abstract even in the natural language sense.
Thus in order to define an ADT we need to specify:
A dynamic data structure (DDS):
It refers to an organization or collection of data in memory that has the flexibility to grow or shrink in size, enabling a programmer to control exactly how much memory is utilized. Dynamic data structures change in size by having unused memory allocated or de-allocated from the heap as needed.
"Write an algorithm to test whether a given binary tree is a binary search tree."
What is a priority queue ?