Prepared By Ms.R.K.Dharme Head Computer Department.

Slides:



Advertisements
Similar presentations
PROGRAMMING LANGUAGE (JAVA) UNIT 42 BY ROBERT BUTTERFIELD TELEPHONE Data Structures and Algorithms.
Advertisements

Data Structures.
Program Efficiency & Complexity Analysis
Chapter 1 Object Oriented Programming. OOP revolves around the concept of an objects. Objects are crated using the class definition. Programming techniques.
Lecture - 1 on Data Structures. Prepared by, Jesmin Akhter, Lecturer, IIT,JU Data Type and Data Structure Data type Set of possible values for variables.
1 Problem Solving Abstraction Oftentimes, different real-world problems can be modeled using the same underlying idea Examples: Runtime storage, Undo operation.
Algorithms and Problem Solving-1 Algorithms and Problem Solving.
1 Data Structures A program solves a problem. A program solves a problem. A solution consists of: A solution consists of:  a way to organize the data.
Basic Definitions Data Structures: Data Structures: A data structure is a systematic way of organizing and accessing data. Or, It’s the logical relationship.
1 ES 314 Advanced Programming Lec 2 Sept 3 Goals: Complete the discussion of problem Review of C++ Object-oriented design Arrays and pointers.
The Design and Analysis of Algorithms
Chapter 1 Introduction Definition of Algorithm An algorithm is a finite sequence of precise instructions for performing a computation or for solving.
Introduction - The Need for Data Structures Data structures organize data –This gives more efficient programs. More powerful computers encourage more complex.
1 A Introduction to Data Structures and Algorithm Analysis Data Structures Asst. Professor Kiran Soni.
DATA STRUCTURE Subject Code -14B11CI211.
Data Structures and Programming.  John Edgar2.
Data Structures 1- Course Syllabus. 2- Introduction about Data Structures.
Data Structures Lecture-1:Introduction
C o n f i d e n t i a l Developed By Nitendra NextHome Subject Name: Data Structure Using C Title: Overview of Data Structure.
Object Oriented Data Structures
Lecture No.01 Data Structures Dr. Sohail Aslam
Introduction to Data Structures. Definition Data structure is representation of the logical relationship existing between individual elements of data.
Lecture 10: Class Review Dr John Levine Algorithms and Complexity March 13th 2006.
Computer Science Department Data Structures and Algorithms Lecture 1.
CS212: DATA STRUCTURES Lecture 1: Introduction. What is this course is about ?  Data structures : conceptual and concrete ways to organize data for efficient.
 DATA STRUCTURE DATA STRUCTURE  DATA STRUCTURE OPERATIONS DATA STRUCTURE OPERATIONS  BIG-O NOTATION BIG-O NOTATION  TYPES OF DATA STRUCTURE TYPES.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
INTRODUCTION TO DATA STRUCTURES. INTRODUCTION A data structure is nothing but an arrangement of data either in computer's memory or on the disk storage.
Chapter 1 Data Structures and Algorithms. Primary Goals Present commonly used data structures Present commonly used data structures Introduce the idea.
Data Structures and Algorithms Lecture 1 Instructor: Quratulain Date: 1 st Sep, 2009.
Data Structure Introduction.
Data Structures Lecture 1: Introduction. Course Contents Data Types   Overview, Introductory concepts   Data Types, meaning and implementation  
PROGRAM DEVELOPMENT CYCLE. Problem Statement: Problem Statement help diagnose the situation so that your focus is on the problem, helpful tools at this.
Data Structures and Algorithms Dr. Tehseen Zia Assistant Professor Dept. Computer Science and IT University of Sargodha Lecture 1.
Elementary Data Organization. Outline  Data, Entity and Information  Primitive data types  Non primitive data Types  Data structure  Definition 
APS105 Lists. Structures Arrays allow a collection of elements –All of the same type How to collect elements of different types? –Structures; in C: struct.
C LANGUAGE Characteristics of C · Small size
1 Data Structures CSCI 132, Spring 2014 Lecture 1 Big Ideas in Data Structures Course website:
DATA STRUCTURES (CS212D) Overview & Review Instructor Information 2  Instructor Information:  Dr. Radwa El Shawi  Room: 
REEM ALMOTIRI Information Technology Department Majmaah University.
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
Data Structure and Algorithms
ARRAYS IN C/C++ (1-Dimensional & 2-Dimensional) Introduction 1-D 2-D Applications Operations Limitations Conclusion Bibliography.
 FUNDAMENTALS OF ALGORITHMS.  FUNDAMENTALS OF DATA STRUCTURES.  TREES.  GRAPHS AND THEIR APPLICATIONS.  STORAGE MANAGEMENT.
BITS Pilani Pilani Campus Data Structure and Algorithms Design Dr. Maheswari Karthikeyan Lecture1.
Lecture 2. Algorithms and Algorithm Convention 1.
Lecture 1 Data Structures Aamir Zia. Introduction Course outline Rules and regulations Course contents Good Programming Practices Data Types and Data.
Introduction To Algorithm and Data Structures Course Teacher: Moona Kanwal -Algorithm Design -Algorithm Analysis -Data structures -Abstract Data Type.
Mohammed I DAABO COURSE CODE: CSC 355 COURSE TITLE: Data Structures.
Advanced Data Structures Lecture 1
Introduction toData structures and Algorithms
Course Developer/Writer: A. J. Ikuomola
The Design and Analysis of Algorithms
GC211Data Structure Lecture2 Sara Alhajjam.
DATA STRUCTURES AND OBJECT ORIENTED PROGRAMMING IN C++
Data Structures Data Structure is a way of collecting and organising data in such a way that we can perform operations on these data in an effective.
Lecture 2 of Computer Science II
Introduction to Data Structure
Map interface Empty() - return true if the map is empty; else return false Size() - return the number of elements in the map Find(key) - if there is an.
Algorithm.
Algorithm An algorithm is a finite set of steps required to solve a problem. An algorithm must have following properties: Input: An algorithm must have.
Objective of This Course
Introduction to Data Structures
Data Structures: Introductory lecture
Introduction to Data Structures
Introduction to Data Structure
Revision of C++.
By Yogesh Neopaney Assistant Professor Department of Computer Science
COP3530- Data Structures Introduction
Basic Concepts of Algorithm
Presentation transcript:

Prepared By Ms.R.K.Dharme Head Computer Department

 Data structure is a branch of computer science. It is basically group of element under one element.  It defines a way to store and organize data in computer, so that it can be used efficiently.  Data structure includes arrays, linked list, queues, stacks, binary tree, graph, hash table etc.  Data structure deals with the knowledge of: 1. how the data should organized? 2. how the flow of data should be control? 3. How the data structure should be organized and implemented?

 What is data structure? ◦ Data structure deals with representation of data considering not only the element stored but also there relationship also. ◦ For writing an efficient program, a proper data structure should be selected. ◦ Processing and accessing of data should be efficient. Back to questions

1. Data structure help us to understand the relationship of one data element with other. 2. Data structure help us to analyze the data in logical and mathematical manner. 3. Data structure help us to Store the data and organized in logical and mathematical manner. 4. Modern days computing problems are complex and large, so there is need to handle large amount of data which is overcome using data structure. 5. The collection of data that may grow and shrink dynamically over time is organized by using various efficient algorithm in data structure Back to questions

 A method of interpreting Is called data type.  Every programming language has its own sets of data types. Back to questions

PRIMITIVE DATA TYPES: ◦ It defines how data will be internally represented in, stored and retrieved from the memory. ◦ Some build in types which are commonly used with most programming languages are as follows: i.Int ii.Float iii.Char iv.Double Back to questions

USER DEFINED DATA TYPE : ◦ Many programming language provide the facility of defining our own data types and give it a name. ◦ We can also rename existing data type and give it a name. ◦ We can also rename existing data type and give it a user defined name. ◦ EX: typedef, structure, union, enumeration. 1. Typedef : The typedef is used to defined new data items that are equivalent to existing data types. Syntax: typedef data type new datatype; Example: typedef int units; typedef float marks; Back to questions

LECTURE 2 Structure:  Structure is a collection of data of different data type.  Structure is convenient tool for handling a group of logically related data items. Syntax: struct tag-name { Data type member 1; Data type member 2; ……. }; Back to questions

Union:  Union are borrowed from structure. So that both have same syntax as structure. However, there are major distinction between them are in terms of storage.  In structure each member has there own storage where as in union all member has use same location.  This implies that, although a union may contain many member of different types, it can handle only one member at a time. Syntax: union item { Int m; Int n;. }; Back to questions

Enumeration : Syntax:  enum identifier {value 1, value 2…., value n};  The identifier is user –defined enumerated data types which can be used to declare variables that can have one of the value enclosed within the braces.

Derived Data Type : ◦ This types are derived or constructed from the fundamental or basic data types. 1. Arrays : Array is a collection of homogenous data items stored in contiguous memory location. Syntax:  datatype variable_name[size]; Back to questions

Function : syntax of function: return_type fun_name(parameter list) { Local variable declaration; Stmt;. return stmt; } Back to questions

 ADT stands for abstract data type. Data type is a collection of values and a set of operations on these value. The definition of ADT involves two parts: 1. First the description of the way in which the components are related to each other. 2. Second on the statement of operation that can be performed on elements of ADT. Back to questions

 Refinement process deals with how the work will be divided into number of functions.  It identifies what will be the task of each function.  It concentrate on what inputs are to be given and what will be the results. There are four levels of refinement processes: 1. Conceptual or abstract level: 2. Algorithmic or data structure level: 3. Programming or implementation level: 4. Application level: Back to questions

 Types of operation that can be performed on data structure are: 1. Traversing 2. Searching 3. Inserting 4. Deleting 5. Sorting 6. merging: Back to questions

 An algorithm is the finite sequence of instruction which can be carried out to solve a particular problem. EX: Largest of two number: step 1: read the two number A and B. step 2: if A>B then print A is largest goto step 4. step 3: if A<B then print B is largest goto step 4. step 4: stop Back to questions

1. Input 2. Output 3. Definiteness 4. Finiteness 5. Effectiveness Back to questions

There are two main approaches to designing an algorithm: 1. Top-Down Approach:  Identifying the major components of the system or program decomposing them into their lower level components  In that hierarchy of module is used, and breaking the specification down into simpler and simpler pieces. 2. Bottom-Up Approach:  A bottom-up design approach starts with designing the most basic or primitive components and proceeds to higher level components.  It follows information hiding.  It strongly support the idea of reusability Back to questions

LECTURE 04 Complexity  Complexity is a characterization of the time or space requirements for solving a problem by a particular algorithm. Time Complexity:  It is the amount of computer time that it needs to run to completion. Space Complexity:  It is the amount of memory that it needs to run to completion. Back to questions

Ex: i=1; while(i<=n) { x=x+1; } 11 2N+1 3N 4n Time complexity is O(n)

 Big ‘o’ notation, is a typical way of describing algorithmic efficiency. The efficiency of an algorithm is expressed as how long it runs in relation to its input.  Big ‘o’ notation is used to describe the performance or complexity of an algorithm. Ex: O(n); O(log n); Here, O is know as big O notation. Back to questions

 Limitations Of Big ’O’ Notation: 1. Big ‘O’ notation contains no effort to improve the programming methodology. 2. Big ‘O’ notation does not discuss the way and means to improve the efficiency of the program, but it helps to analyze and calculate the efficiency of the program. 3. Big ‘O’ notation does not exhibit the potential of the constants. Back to questions

MSBTE ASKED QUESTIONS 1.What is Data Structure? S-08,10,11,12,13,W-09,12(2M) W-13(1M)What is Data Structure? S-08,10,11,12,13,W-09,12(2M) W-13(1M 2.State the need of data structure. W-08,S-08,13(2M)State the need of data structure. W-08,S-08,13(2M) 3.Give the classification of data types. S-09,S-11,S-12(2M)Give the classification of data types. S-09,S-11,S-12(2M) 4.Explain the term primitive data type. W-12(1M)Explain the term primitive data type. W-12(1M) 5.Explain derived data type. W-12(1M)Explain derived data type. W-12(1M) 6.Describe the abstract data type. W-12(2M)Describe the abstract data type. W-12(2M) 7.State four level of refinement stages. W-09(4M)State four level of refinement stages. W-09(4M) 8.Explain classification of data structure.S-08(4M),W-08,W-09,S-10,S-13(2M)Explain classification of data structure.S-08(4M),W-08,W-09,S-10,S-13(2M 9.Define primitive data structure. W-08,13(1M)Define primitive data structure. W-08,13(1M) 10.What do you mean by non primitive data types. W-10(2M)What do you mean by non primitive data types. W-10(2M 11.Enlist data structure operations. S-10,W-10,S-12,W-12,S-13(4M)Enlist data structure operations. S-10,W-10,S-12,W-12,S-13(4M) 12.Define algorithm and explain characteristics of algorithm W-12(4M)Define algorithm and explain characteristics of algorithm W-12(4M 13.Explain different approaches to design an algorithm S-12,W-13,S-14(4M)Explain different approaches to design an algorithm S-12,W-13,S-14(4M 14.Explain time and space complexity related to algorithms with example.S-11,S-12,W- 12,13,S-13,14(4M)Explain time and space complexity related to algorithms with example.S-11,S-12,W- 12,13,S-13,14(4M) 15.Explain Big ‘O’ Notation S-14(4M)Explain Big ‘O’ Notation S-14(4M)