Any actual data representation in a specific format is Data Structure i.e. Binary Tree, Link List etc.

Now coming to Abstract Data Type, ADT is a mathematical model of a data structure which contains a set of its instances, with: a specific interface - a collection of signatures of methods that can be invoked on an instance, a set of axioms that define the semantics of the methods. Typical example could be Lists, Trees, Stacks

**Now Lets construct a Rational Number ADT -**

**Construction:** Create an instance of a rational number ADT using two integers, a and b, where a represents the numerator and b represents the denominator.

**Operations**: addition, subtraction, multiplication, division, exponentiation, comparison, simplify, conversion to a float number.

**Now lets try to explain using a common example -**

Take a List ADT, A List is an abstract data type with well-defined operations (add element, remove element, etc.) while a linked-list is a pointer-based data structure that can be used to create a representation of a List and can be called Data Structure.