### Introduction To Data Structures.ppt

1. Tuesday, March 28, 2023 1 Data Structures & Algorithms Represented By Nale Rajesh K. (Lecturer COE Malegaon (Bk)) Introduction To Data Structures
2. Tuesday, March 28, 2023 2 What is Data.?  In computing, data is information that has been translated into a form that is more convenient to move or process.  Relative to today's computers and transmission media, data is information converted into binary digital form.  Distinct pieces of information, usually formatted in a special way.
3. Tuesday, March 28, 2023 3 Data Objects  Anything that exists in storage and on which operations can be performed.  Examples include files, Programs and arrays.
4. Tuesday, March 28, 2023 4 Data Types  The mathematical properties and internal representation of data and functions.  An attribute used for defining data as numeric or character.
5. Tuesday, March 28, 2023 5 A Data Type is characterized by..  a set of values  a data representation, which is common to all these values, and  a set of operations, which can be applied uniformly to all these values
6. Tuesday, March 28, 2023 6 Abstract Data Types  An Abstract Data Type (ADT) is:  a user defined data type  a set of values  a set of operations, which can be applied uniformly to all these values.
7. Tuesday, March 28, 2023 7 ADT = properties + operations  An ADT describes a set of objects sharing the same properties and behaviors  The properties of an ADT are its data (representing the internal state of each object  double d; -- bits representing exponent & mantissa are its data or state  The behaviors of an ADT are its operations or functions (operations on each instance)  sqrt(d) / 2; //operators & functions are its behaviors
8. Tuesday, March 28, 2023 8 Benefits Of ADT  encapsulation: less to worry about  division of labor  promotes code sharing  cheaper sub-contracts  facilitates unit-testing
9. Tuesday, March 28, 2023 9 List Abstract Data Type (ADT)  The List ADT models a sequence of positions storing arbitrary objects  It establishes a before/after relation between positions  Can be implemented in various ways:  array  singly-linked  doubly-linked  Accessor methods:  first(), last()  prev(p), next(p)  Update methods:  replace(p, e)  insertBefore(p, e), insertAfter(p, e),  insertFirst(e), insertLast(e)  remove(p)  convenience methods:  isEmpty()
10. Tuesday, March 28, 2023 10 Data Structures  Arrangement of data in computer’s memory.  Goal: to organize data  Criteria: to facilitate efficient  storage of data  retrieval of data  manipulation of data  Design Issue:  select and design appropriate data types.
11. Tuesday, March 28, 2023 11 Primitive & Non-Primitive  Primitive Data Structures  Data can be structured at the most primitive level, where they are directly operated upon by machine-level instructions.  At this level, data may be character or numeric, and numeric data may consist of integers or real numbers.  Non-Primitive Data Structures  Non-primitive data structures can be classified as arrays, lists, and files.  An array is an ordered set which contains a fixed number of objects.  A list, by contrast, is an ordered set consisting of a variable number of elements.  A file is typically a large list that is stored in the external memory of a computer.
12. Tuesday, March 28, 2023 12 Linear & Non-Linear  Linear Data Structure  Linear data structure is linear if element is adjacent to each other. It has exactly two neighbors elements to which it is connected as its previous and next member  Array , Linked List , Stack , Queuenumbers.  Non- Linear Data Structures  Non-Linear data structure is that if one element can be connected to more than two adjacent element then it is known as non-linear data structure..  Tree , Graph
13. Tuesday, March 28, 2023 13 Static Data Structures  a simple data structure, the array is static data structure.  They are linear only  They're essentially fixed-size.  They often use too much space.
14. Tuesday, March 28, 2023 14 Dynamic Data Structure  Is one that can grow or shrink as needed to contain the data you want stored.  That is, you can allocate new storage when it's needed and discard that storage when you're done with it.  malloc(), calloc() functions in C language.  Dynamic data structures generally consist of at least some simple data storage, along with a linkage to the next element in the structure.  These links are often called pointers, or references.
15. Tuesday, March 28, 2023 15 Persistent & Ephemeral  Persistent  One that is continue in existence  Ephemeral  lasting or of use for only a short time; transitory