Need help? We are here


Respond to the discussions below with 150 words or more.

 Abstract data types (ADTs) exist only conceptually, and do not have any  concrete existence in a language. Their purpose is to define behavior  and state management (Abstract data type, 2021). Queues are an example  of an ADT. General purpose data structures are a class level  implementation of the abstract data type that is a collection of data  values, their relationships, and the operations that can be applied to  said data (Data structure, 2021). These do exist in the form of code.  Data types are a concrete instance of a class in the form of defined  class objects. To put this into simpler terms, it is an attribute of  data which tells the computer how the data is intended to be used (Data  type, 2021). An integer is an example of a common data type. Each one of  these terms is defined differently, but they all work together.  Abstract data types define operations, general purpose data structures  implement said operations, and data types classify data by values and  operations. If a data type cannot specify any sort of concrete  implementation, then it is an abstract data type. Data structures are an  efficient way to store said data. Examples of data structures include  Linked Lists. Let’s take a closer look at the ADT and data structure  examples: queues and linked lists. A queue is an interface, which means  that it needs a concrete class for declaration (GeeksforGeeks, 2020).  This is what makes a queue an abstract data type. One of the most common  classes that queues use to declare data is a linked list. A linked list  is the implementation of a linear data structure where the elements are  linked using pointers and addresses (GeeksforGeeks, 2021). Queues do  not have concrete implementation and linked lists do. So, while a Linked  List can act as the physical implementation of a queue, a queue must  rely on a data structure for implementation. The distinction may seem  subtle at first, but the difference is important.