Module:                            Data                         Structures                           with CIntroduction to...
Icons Used                                                                   Hands on Questions          Tools            ...
Introduction to Data Structures:                               OverviewIntroduction:  The session briefly explains about w...
Introduction to Data Structures:                                  Objectives  Objective:After completing this session, you...
OverviewData type - specification of a set of data andthe characteristics for that data.Data structure - actual implementa...
Abstract Data TypeDefinition - a data type together with theoperations, whose properties are specifiedindependently of any...
Types of Data StructuresLinear structures:   A data structure is said to be linear if its elements form a   sequence or a ...
Selecting a Data StructureSelecting a Data Structure begins fromchoice of an appropriate Abstract Data TypeADT.Abstract Da...
Selecting a Data Structure                                 (Contd.)Selection of an abstract data structure iscrucial in th...
Performance Analysis and                             MeasurementsSpace and time complexity:   Space complexity: The amount...
Big O NotationBig O notation:  A mathematical notation used to describe the  asymptotic behavior of functions.  Used to ch...
Big O Notation (Contd.)The Big O notation is used to measure:  The complexity of algorithms  The efficiency of algorithmsU...
Questions from participants               13   ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
Test Your Understanding1. What is the difference between a data type   and a data structure?2. What is the complexity of t...
Introduction to Data Structures:                                SummaryStudy of data structure deals with the actualimplem...
Introduction to Data Structures:                                               Source    Fundamentals of Data Structures b...
You have successfully completed Introduction to Data Structures
Upcoming SlideShare
Loading in …5
×

Dsc -session01_introduction_to_data_structures_v2_1_.2

596 views
544 views

Published on

Published in: Education, Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
596
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
23
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Dsc -session01_introduction_to_data_structures_v2_1_.2

  1. 1. Module: Data Structures with CIntroduction to Data Structures C3: Protected
  2. 2. Icons Used Hands on Questions Tools ExerciseCoding Test Your ReferenceStandards Understanding A WelcomeDemonstration Contacts Break 2 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  3. 3. Introduction to Data Structures: OverviewIntroduction: The session briefly explains about what a data structure is, what are the different data structures available, and how to decide on the data structure to be used for a particular application. 3 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  4. 4. Introduction to Data Structures: Objectives Objective:After completing this session, you will be able to: Define a data structure List the types of data structures Identify how to analyze and select data structure for a particular application 4 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  5. 5. OverviewData type - specification of a set of data andthe characteristics for that data.Data structure - actual implementation of thedata type. Examples: Arrays Stack Queue Lists 5 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  6. 6. Abstract Data TypeDefinition - a data type together with theoperations, whose properties are specifiedindependently of any particularimplementation.Implementation details are not considered.The definition can be mathematical or canbe programmed as an interface. 6 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  7. 7. Types of Data StructuresLinear structures: A data structure is said to be linear if its elements form a sequence or a linear list.Hash tables: A hash table, or a hash map, is a data structure that associates keys with values.Trees: A tree can be viewed as a branching structure with no loopsGraph: A graph is a data structure, that consists of a set of nodes and a set of edges that establish relationships (connections) between the nodes. 7 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  8. 8. Selecting a Data StructureSelecting a Data Structure begins fromchoice of an appropriate Abstract Data TypeADT.Abstract Data Structure: An abstract storagefor data defined in terms of the set ofoperations to be performed on the data andcomputational complexity for performingthese operations. This is regardless of theimplementation in a concrete data structure. 8 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  9. 9. Selecting a Data Structure (Contd.)Selection of an abstract data structure iscrucial in the design of efficient algorithmsand in estimating their computationalcomplexity.Selection of concrete data structures isimportant for efficient implementation ofalgorithms. 9 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  10. 10. Performance Analysis and MeasurementsSpace and time complexity: Space complexity: The amount of main memory needed to execute a program (space for program and data) till it produces output. Time complexity: Total CPU time taken by a program during execution till it produces output.Complexity can be classified into the following threecategories. Best Case: The minimum CPU time taken by a program. Worst Case: The maximum CPU time taken by a program. Average Case: The average CPU time taken by a program. 10 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  11. 11. Big O NotationBig O notation: A mathematical notation used to describe the asymptotic behavior of functions. Used to characterize a functions behavior for very large / very small inputs in a simple but rigorous way that enables comparison to other functions. Notations: O Ω Θ 11 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  12. 12. Big O Notation (Contd.)The Big O notation is used to measure: The complexity of algorithms The efficiency of algorithmsUsed to express an ordering property amongfunctions.T(N) – gives the amount of the resource(usually time or the count of some specificoperation) consumed when the input to thealgorithm is of size N. 12 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  13. 13. Questions from participants 13 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  14. 14. Test Your Understanding1. What is the difference between a data type and a data structure?2. What is the complexity of the following program? Calculation of average mark of the students in a class. 14 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  15. 15. Introduction to Data Structures: SummaryStudy of data structure deals with the actualimplementation of the data type and gives a way ofstoring data in an efficient manner.An Abstract Data Type (ADT) is a data type togetherwith the operations, whose properties are specifiedindependently of any particular implementation.The different types of data structure available are: Linear Hash table Trees Graphs 15 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  16. 16. Introduction to Data Structures: Source Fundamentals of Data Structures by Ellis Horowitz Data structures through C by G.S. Baluja www.wikipedia.com http://www.macs.hw.ac.uk/~alison/ds98/ds98.html http://www.idevelopment.info/data/Programming/data_structure s/overview/Data_Structures_Algorithms_Introduction.shtml http://www.cs.auckland.ac.nz/software/AlgAnim/lists.html http://students.washington.edu/mukundn/courses/cse490b/ove rview.htmlDisclaimer: Parts of the content of this course is based on the materials available from theWeb sites and books listed above. The materials that can be accessed from linked sites arenot maintained by Cognizant Academy and we are not responsible for the contents thereof.All trademarks, service marks, and trade names in this course are the marks of the respectiveowner(s). 16 ©Copyright 2007, Cognizant Technology Solutions, All Rights Reserved
  17. 17. You have successfully completed Introduction to Data Structures

×