What does abstract data type means?

Answer Posted / santhosh

C++ data structures is another course am learning this
semester. This course is a pre-requisite for all
non-Computer Science students. I have already learnt and
implemented all the C++ data structures in a private course
during my undergraduate studies, but not with the same
understanding am learning them these days. Frankly I dont
know much about data structures during my work experience.
So I consider this course as an opportunity to get my hands
on C++ again and implement various datastructures.

First thing I got to know is.. the difference between the
abstract data types (ADT) and datastructures. Earlier I
thought they are same.

Before starting that, we need to be clear about the logical
and implementation level of data. Let us take an example of
a simple built-in data type integer. At the logic level, we
application programmers know only about what are the
operations an integer data type can perform, ie., addition,
subtraction etc., But we are no way aware of how the data
type is actually implemented. At the implementation level,
it is about how the data type integer is implemented in the
machine level, ie., it could either of binary-coded decimal,
unsigned binary, sign-and-magnitude binary, One's complement
and Two's complement notation.

Now.. for the understanding the ADT and data structure, we
need to assume a higher level abstraction where we have the
built-in types at the implementation level.

To put it simple, ADT is a logical description and data
structure is concrete. ADT is the logical picture of the
data and the operations to manipulate the component elements
of the data. Data structure is the actual representation of
the data during the implementation and the algorithms to
manipulate the data elements. ADT is in the logical level
and data structure is in the implementation level.

As you can see, ADT is implementation independent. For
example, it only describes what a data type List consists
(data) and what are the operations it can perform, but it
has no information about how the List is actually implemented.

Whereas data structure is implementation dependent, as in
the same example, it is about how the List implemented ie.,
using array or linked list. Ultimately, data structure is
how we implement the data in an abstract data type.

Is This Answer Correct ?    112 Yes 16 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

State the properties of b tree.

522


What does sorting an array do?

515


An array having 100 elements have numbers from 1 to 99 randomly out of which any number is repeated. Find the repeated number in minimum time and space complexity.

697


Explain how is linked list implemented?

526


What are the different types of sorting? Explain the difference between them.

613






What are the disadvantages of using collection classes over arrays?

518


What is the need for priority queue?

554


“int a[] = new int[3]{1, 2, 3}” – This a legal way of defining the arrays?

708


What do you mean by Runtime Error

548


Can arraylist be empty?

461


How memory is reserved using a declaration statement in data structure?

625


Why is hashmap faster than arraylist?

528


What is data type in data structure?

503


What is a stable sorting algorithm?

575


Explain implementation of traversal of a binary tree.

585