Data Structures 1- Course Syllabus. 2- Introduction about Data Structures.

Slides:



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

Data Structures.
Intro. to Data Structures 1CSCI 3333 Data Structures - Roughly based on Chapter 6.
Computer Science 112 Fundamentals of Programming II Overview of Collections.
Overview of Data Structures and Algorithms
CS 307 Fundamentals of Computer Science 1 Abstract Data Types many slides taken from Mike Scott, UT Austin.
Prepared by Dr. Inayatullah Shah1 Data Structures CSC212.
Introduction and a Review of Basic Concepts
1 Data Structures CSC Data Types & Data Structures Applications/programs read, store and operate on data. Finally output results. What is data?
1 Data Structures: Introduction CSC Data Types & Data Structures Applications/programs read data, store data temporarily, process it and finally.
Abstract Data Types (ADT)
Basic Definitions Data Structures: Data Structures: A data structure is a systematic way of organizing and accessing data. Or, It’s the logical relationship.
Abstract Data Type (ADT). 2 An Abstract Data Type (ADT) is a data structure with a set of operations –Operations specify how the ADT behaves, but does.
INTRODUCTION TO DATA STRUCTURE. Topics To Be Discussed………………………. Meaning of Data Structure Classification of Data Structure Data Structure Operations.
1 ES 314 Advanced Programming Lec 2 Sept 3 Goals: Complete the discussion of problem Review of C++ Object-oriented design Arrays and pointers.
C++ fundamentals.
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 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.
Copyright © Wondershare Software Introduction to Data Structures Prepared by: Eng. Ahmed & Mohamed Taha.
Introduction to Data Structures. Definition Data structure is representation of the logical relationship existing between individual elements of data.
Data Structures and Abstract Data Types "Get your data structures correct first, and the rest of the program will write itself." - David Jones.
Course: Object Oriented Programming - Abstract Data Types Unit1: IntroductionSlide Number 1 Introduction Course: Object Oriented Programming Abstract Data.
Introduction. 2COMPSCI Computer Science Fundamentals.
Lecture 10: Class Review Dr John Levine Algorithms and Complexity March 13th 2006.
Computer Science Department Data Structures and Algorithms Lecture 1.
Chapter 11 Arrays Continued
Prepared By Ms.R.K.Dharme Head Computer Department.
1 21 COP 3540 Data Structures with OOP Overview: Chapter 1.
1 CS 350 Data Structures Chaminade University of Honolulu.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
Data Structures and Algorithms Lecture 3 Instructor: Quratulain Date: 8 th September, 2009.
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  
CS342 Data Structures End-of-semester Review S2002.
Elementary Data Organization. Outline  Data, Entity and Information  Primitive data types  Non primitive data Types  Data structure  Definition 
WELCOME to III SEM Date: Class - ECE no of present : no of absent :
OOP using C Abstract data types How to accomplish the task??? Requirements Details Input, output, process Specify each task in terms of input.
1 Introduction  Algorithms  Data structures  Abstract data types  Programming with lists and sets © 2008 David A Watt, University of Glasgow Algorithms.
1 Classes II Chapter 7 2 Introduction Continued study of –classes –data abstraction Prepare for operator overloading in next chapter Work with strings.
Abstract Data Type EnhanceEdu.
Dale Roberts Department of Computer and Information Science, School of Science, IUPUI CSCI 240 Elementary Data Structures Array Lists Array Lists Dale.
JAVA: An Introduction to Problem Solving & Programming, 6 th Ed. By Walter Savitch ISBN © 2012 Pearson Education, Inc., Upper Saddle River,
72 4/11/98 CSE 143 Abstract Data Types [Sections , ]
Introduction to Objects and Encapsulation Computer Science 4 Mr. Gerb Reference: Objective: Understand Encapsulation and abstract data types.
Lecture 1 Data Structures Shafay Shamail September 05, 2006.
BITS Pilani Pilani Campus Data Structure and Algorithms Design Dr. Maheswari Karthikeyan Lecture1.
1.  A step by step process to solve any problem is called algorithm.  Algorithm is a process which take some values as input and provide us output.
Prof. I. J. Chung Data Structure #1 Professor I. J. Chung.
Code: BCA302 Data Structures with C Prof.(Dr.) Monalisa Banerjee By.
Maitrayee Mukerji. INPUT MEMORY PROCESS OUTPUT DATA INFO.
Lecture 1 Data Structures Aamir Zia. Introduction Course outline Rules and regulations Course contents Good Programming Practices Data Types and Data.
Mohammed I DAABO COURSE CODE: CSC 355 COURSE TITLE: Data Structures.
Advanced Data Structures Lecture 1
Introduction toData structures and Algorithms
Prepared by Dr. Inayatullah Shah
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.
Introduction to Data Structures
Data Structures: Introductory lecture
Data Structures: Introduction
Introduction to Data Structure
COP3530- Data Structures Introduction
Data Structures: Abstract Data Types (ADTs)
Data Structures: Introduction
Abstract Data Types (ADTs)
Presentation transcript:

Data Structures 1- Course Syllabus. 2- Introduction about Data Structures.

First: what is data structures?

Data Structures A data structure is an arrangement of data in a computer’s memory (or sometimes on a disk). Examples of data structures include linked lists, stacks, binary trees, and hash tables, among others. Also, it is a object oriented programming

Data Structures Data Types Primitive Composite Abstract data type HashesLinear data Arrays Lists Trees Binary trees B-trees Heap Trees AVL Trees Multi way trees Space Trees Application specific trees Graphs

Are Data structures important ??? Data structures are very useful in the construction of a program or a system, especially if the program has to manage huge amounts of data efficiently, such as large databases, airline system, students enrollment system and others. It explains the way of organizing data or elements in a computer memory

Algorithms Algorithms manipulate the data in these structures in various ways, such as inserting a new data item, searching for a particular item, or sorting the items. You can think of an algorithm as a recipe: a list of detailed instructions for carrying out an activity.

Abstract Data Type (ADT) Before a program is written we should have a fairy good idea of how to accomplish the task being implemented by this program. It is important to specify each task in terms of input and output. Behavior of the program is more important than the gears of the mechanism accomplishing it. Ex. If an item needed in to accomplish some tasks, the item is specified in terms of operations performed on it rather than in terms of its inner structure.

ADT These operations may act upon this item, for example: ◦Modifying it, searching for some details in it, or sorting something in it. After these operations are specified, the implementation of the program may start. The implementation decides which data structure should be used to make execution most efficient in terms of time and space.

ADT An item specified in terms of operations is called an abstract data type. Abstract Data Type (ADT): is a set of items and fundamental operations on this set. Abstraction? Anything that hides details & provides only the essentials. ◦Examples: an integer 165 = , procedures/subprograms, etc. Abstract Data Types (ADTs) are Simple or structured data types whose implementation details are hidden… An abstract data type is not a part of a program, because a program written in a programing language requires the definition of a data structure, not only the operations on data structure. An object oriented language( OOL) such as C++ has direct link to abstract data types by implementing them as a class.

ADT: Example ADT String1 Operations: Assume that there is a string S. 1.Procedure Append (c: char) Requires: length(S) < 80. Results: c is appended to the right end of S. 2. Procedure Remove (c: char) Requires: length(S) > 0. Results: The rightmost character of S is removed and placed in c, S’s length decreases by 1.

3. Procedure MakeEmpty () Results: all characters are removed. 4. Procedure Concatenate (R: String) Results: String R is concatenated to the right of string S, result placed into S. 5. Procedure Reverse () 6. Procedure Length (L: int) 7. Procedure Equal (S: String, flag: boolean) 8. Procedure GetChar (int i)

In C++ the class construct is used to declare new data types. In C++ operations are implemented as function members of classes or methods.

ADT String class String1 { private: char[] str; int size; puplic: String1 () { size = -1; str = new char[80]; } ~String1(){} void Append (char c) { size++; str[size] = c; } Representation Implementation

ADT String char Remove (){ char c = str[size]; size--; return(c); } char GetChar(int i){ return(str[i]); } void MakeEmpty (){ size = -1; } int Length (){ return(size);} void Concatenate (String1 s){ for (int i = 0; i<=s.Length(); i++) { char c = s.GetChar(i); Append(c); } boolean Equal (String1 s){ } void Reverse () { }

An abstract data type is not a part of a program, because a program written in a programing language requires the definition of a data structure, not only the operations on data structure. An object oriented language( OOL) such as C++ has direct link to abstract data types by implementing them as a class.

Arrays