Data Structures.

Slides:



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

When is Orientated Programming NOT? Mike Fitzpatrick.
Intro. to Data Structures 1CSCI 3333 Data Structures - Roughly based on Chapter 6.
4. Object-Oriented Programming Procedural programming Structs and objects Object-oriented programming Concepts and terminology Related keywords.
Department of Computer Engineering Faculty of Engineering, Prince of Songkla University 1 5 – Abstract Data Types.
Overview of Data Structures and Algorithms
CMPT 225 Data Structures and Programming. Course information Lecturer: Jan Manuch (Jano), TASC TAs: Osama Saleh,
Software Engineering and Design Principles Chapter 1.
1 Problem Solving Abstraction Oftentimes, different real-world problems can be modeled using the same underlying idea Examples: Runtime storage, Undo operation.
CHAPTER 3 COLLECTIONS Abstract Data Types. 2 A data type consists of a set of values or elements, called its domain, and a set of operators acting on.
CS 307 Fundamentals of Computer Science 1 Abstract Data Types many slides taken from Mike Scott, UT Austin.
© 2006 Pearson Addison-Wesley. All rights reserved4-1 Chapter 4 Data Abstraction: The Walls.
Review for Test 2 i206 Fall 2010 John Chuang. 2 Topics  Operating System and Memory Hierarchy  Algorithm analysis and Big-O Notation  Data structures.
Basic Definitions Data Structures: Data Structures: A data structure is a systematic way of organizing and accessing data. Or, It’s the logical relationship.
Chapter 1 Program Design
1 ES 314 Advanced Programming Lec 2 Sept 3 Goals: Complete the discussion of problem Review of C++ Object-oriented design Arrays and pointers.
Introduction - The Need for Data Structures Data structures organize data –This gives more efficient programs. More powerful computers encourage more complex.
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.
Prof. Amr Goneid, AUC1 CSCE 210 Data Structures and Algorithms Prof. Amr Goneid AUC Part 1. Data Modeling and ADTs.
Copyright © Wondershare Software Introduction to Data Structures Prepared by: Eng. Ahmed & Mohamed Taha.
MT311 Java Application Development and Programming Languages Li Tak Sing( 李德成 )
Data Structures Winter What is a Data Structure? A data structure is a method of organizing data. The study of data structures is particularly important.
Chapter 3 List Stacks and Queues. Data Structures Data structure is a representation of data and the operations allowed on that data. Data structure is.
Data Structures and Abstract Data Types "Get your data structures correct first, and the rest of the program will write itself." - David Jones.
ADTs and C++ Ch 2,3,4 May 12, 2015 Abstract Data Type (ADT) An abstract data type is: 1.A collection of data items (storage structures) 2.Basic operations.
Computer Science Department Data Structures and Algorithms Lecture 1.
Min Chen School of Computer Science and Engineering Seoul National University Data Structure: Chapter 1.
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
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.
 DATA STRUCTURE DATA STRUCTURE  DATA STRUCTURE OPERATIONS DATA STRUCTURE OPERATIONS  BIG-O NOTATION BIG-O NOTATION  TYPES OF DATA STRUCTURE TYPES.
Overview of Course Java Review 1. This Course Covers, using Java Abstract data types Design, what you want them to do (OOD) Techniques, used in implementation.
OBJECT-ORIENTED PROGRAMMING (OOP) WITH C++ Instructor: Dr. Hany H. Ammar Dept. of Electrical and Computer Engineering, WVU.
Chapter 1 Data Structures and Algorithms. Primary Goals Present commonly used data structures Present commonly used data structures Introduce the idea.
Data Structures Lecture 1: Introduction. Course Contents Data Types   Overview, Introductory concepts   Data Types, meaning and implementation  
SOFTWARE DESIGN. INTRODUCTION There are 3 distinct types of activities in design 1.External design 2.Architectural design 3.Detailed design Architectural.
1 Chapter 2 The Big Picture. 2 Overview ● The big picture answers to several questions.  What are data structures?  What data structures do we study?
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
Learners Support Publications Object Oriented Programming.
Programming Paradigms Lecturer Hamza Azeem. What is PP ? Revision of Programming concepts learned in CPLB Learning how to perform “Object-Oriented Programming”
Elementary Data Organization. Outline  Data, Entity and Information  Primitive data types  Non primitive data Types  Data structure  Definition 
Collections Data structures in Java. OBJECTIVE “ WHEN TO USE WHICH DATA STRUCTURE ” D e b u g.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
2 Obaid Ullah HOD Computer Science Dept. Superior University Sialkot Campus.
Introduction to Objects and Encapsulation Computer Science 4 Mr. Gerb Reference: Objective: Understand Encapsulation and abstract data types.
Chapter 2 Principles of Programming and Software Engineering.
BITS Pilani Pilani Campus Data Structure and Algorithms Design Dr. Maheswari Karthikeyan Lecture1.
CPS120: Introduction to Computer Science Nell Dale John Lewis Abstract Data Types.
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
Course Developer/Writer: A. J. Ikuomola
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
structures and their relationships." - Linus Torvalds
structures and their relationships." - Linus Torvalds
Data Structures: Introductory lecture
Introduction to Computer Science for Majors II
CIS601: Object-Oriented Programming in C++
Review CSE116 2/21/2019 B.Ramamurthy.
Introduction to Data Structure
structures and their relationships." - Linus Torvalds
Presentation transcript:

Data Structures

What are Data Structures & Algorithms A data structure is an arrangement of data in a computer’s memory (or sometimes on a disk). Data structures include arrays, linked lists, stacks, binary trees, and hash tables, among others. Algorithms manipulate the data in these structures in various ways, such as searching for a particular data item and sorting the data.

What sort of problems can be solved? Real-world data storage By real-world data, we mean data that describes physical entities external to the computer. As some examples, a personnel record describes an actual human being, How would you store, insert, delete, search and sort in quick way. Programmer’s tools A programmer uses such structures as tools to facilitate some other operation. Stacks, queues, and priority queues are often used in this way. Modeling The most important data structure of this type is the graph. You can use graphs to represent airline routes between cities or connections in an electric circuit or tasks in a project.

Overview of Data Structures Overview of Algorithm For most data structures, you need to know how to Insert a new data item. • Search for a specified item. • Delete a specified item. Overview of Data Structures

System Life Cycle Requirement Analysis Design Refinement and Coding Verification (testing and error removal)

Problems with Procedural Language Poor modeling of the real world Furnace-on(), furnace-of() –x-- thermostate Crude organizational units data could be local to a particular method, or it could be global—accessible to all methods (no concept of encapsulation or reusability)

OOP OOP is a method of implementation in which Objects are the fundamental building blocks Each object is instance of some type (class) Classes are related to each other by inheritence relationship Inheritance is the creation of one class, called the extended or derived class, from another class called the base class. The extended class has all the features of the base class, plus some additional features.

OOP Polymorphism involves treating objects of different classes in the same way. For polymorphism to work, these different classes must be derived from the same base class. In practice, polymorphism usually involves a method call that actually executes different methods for objects of different classes. Data encapsulation or information hiding is the concealing of the implementation details of a data object from the outside world. E.g we do not interact with circuits instead we only know RW, FW, Play

OOP Data Abstraction is the separation between the specification of a data object and its implementation. E.g manual makes clear distinction between the buttons of VCR. An abstract data type (ADT) is a data type that is organized in such a way that the specification of the objects and the specification of the operations on the objects is separated from the representation of the objects and implementation of the operations.