25

I have found books and online resources use both terms interchangeably wihout showing much explicit distinction.

Brian Tompsett - 汤莱恩
  • 5,753
  • 72
  • 57
  • 129
  • 5
    What books are you reading? Any decent introduction to data structures in language X book will make a clear distinction between these two. – Hunter McMillen Dec 20 '12 at 05:16
  • 3
    Start with http://en.wikipedia.org/wiki/Abstract_data_type vs http://en.wikipedia.org/wiki/Data_structure – Matt Ball Dec 20 '12 at 05:18
  • From the Data Structure Wikipedia page, "The ADT defines the logical form of the data type. The data structure implements the physical form of the data type." – Quazi Irfan Nov 08 '20 at 03:59
  • @HunterMcMillen I am very puzzled by the words "data structure at logical level", is this equivalent to "ADT"? – JoZ Oct 30 '21 at 23:30
  • ADT is what a data type can do from user/application point of view regardless how it's implemented. Data structure is how this certain data type is implemented under the hood by the implementer (usually the company/developer that coded it) – Zain Jul 23 '22 at 20:40

1 Answers1

32

This may help:

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.

ADT vs DS

RBT
  • 24,161
  • 21
  • 159
  • 240
vishal_aim
  • 7,636
  • 1
  • 20
  • 23
  • 3
    A quick example - Linked list is an ADT and tree is one of its implementations. – RBT Jan 14 '18 at 00:16
  • 2
    @RBT I thought the tree is also a Logical level data structure... and I confusing concepts? – JoZ Oct 30 '21 at 23:35