PROGRAMMING LANGUAGE (JAVA) UNIT 42 BY ROBERT BUTTERFIELD TELEPHONE 01274 436413 Data Structures and Algorithms.

Slides:



Advertisements
Similar presentations
Chapter 1 Object Oriented Programming 1. OOP revolves around the concept of an objects. Objects are created using the class definition. Programming techniques.
Advertisements

Data Structures.
Intro. to Data Structures 1CSCI 3333 Data Structures - Roughly based on Chapter 6.
Programming Paradigms Introduction. 6/15/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. L1:
The Efficiency of Algorithms Chapter 4 Copyright ©2012 by Pearson Education, Inc. All rights reserved.
Overview of Data Structures and Algorithms
Chapter 1 Object Oriented Programming. OOP revolves around the concept of an objects. Objects are crated using the class definition. Programming techniques.
EEM 480 Algorithms and Complexity by Assist. Prof. Dr. Emin Germen.
Review. What to know You are responsible for all material covered in lecture, the readings, or the programming assignments There will also be some questions.
CSCE 210 Data Structures and Algorithms
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.
8 – Objects as building blocks Visual Basic: An Object Oriented Approach.
Data Structures Introduction. What is data? (Latin) Plural of datum = something given.
COMP 110 Introduction to Programming Mr. Joshua Stough.
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.
Introduction - The Need for Data Structures Data structures organize data –This gives more efficient programs. More powerful computers encourage more complex.
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.
Copyright © Wondershare Software Introduction to Data Structures Prepared by: Eng. Ahmed & Mohamed Taha.
Programming Concepts Jacques Tiberghien office : Mobile :
Data Structures Lecture 1: Introduction Azhar Maqsood NUST Institute of Information Technology (NIIT)
CHAPTER ONE Problem Solving and the Object- Oriented Paradigm.
IKI 10100: Data Structures & Algorithms Ruli Manurung (acknowledgments to Denny & Ade Azurat) 1 Fasilkom UI Ruli Manurung (Fasilkom UI)IKI10100: Lecture8.
Course: Object Oriented Programming - Abstract Data Types Unit1: IntroductionSlide Number 1 Introduction Course: Object Oriented Programming Abstract Data.
Lecture 10: Class Review Dr John Levine Algorithms and Complexity March 13th 2006.
Computer Science Department Data Structures and Algorithms Lecture 1.
Java Collections An Introduction to Abstract Data Types, Data Structures, and Algorithms David A Watt and Deryck F Brown © 2001, D.A. Watt and D.F. Brown.
Min Chen School of Computer Science and Engineering Seoul National University Data Structure: Chapter 1.
Prepared By Ms.R.K.Dharme Head Computer Department.
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.
DATA STRUCTURE & ALGORITHMS (BCS 1223) NURUL HASLINDA NGAH SEMESTER /2014.
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 and Algorithms Lecture 1 Instructor: Quratulain Date: 1 st Sep, 2009.
Data Structures Lecture 1: Introduction. Course Contents Data Types   Overview, Introductory concepts   Data Types, meaning and implementation  
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 
© 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.
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,
Introduction to Objects and Encapsulation Computer Science 4 Mr. Gerb Reference: Objective: Understand Encapsulation and abstract data types.
 Saturday, April 20, 8:30-11:00am in B9201  Similar in style to written midterm exam  May include (a little) coding on paper  About 1.5 times as long.
Data Structures Dr. Abd El-Aziz Ahmed Assistant Professor Institute of Statistical Studies and Research, Cairo University Springer 2015 DS.
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
Planning & System installation
Midterm Review.
Lecture 2 of Computer Science II
ECET 370 HELPS Education Your Life-- ecet370helps.com.
ECET 370 HELPS Lessons in Excellence- -ecet370helps.com.
ECET 370 HELPS Education for Service- - ecet370helps.com.
structures and their relationships." - Linus Torvalds
structures and their relationships." - Linus Torvalds
Introduction to Computer Science for Majors II
Review CSE116 2/21/2019 B.Ramamurthy.
Introduction to Data Structure
COP3530- Data Structures Introduction
Final Review B.Ramamurthy 5/8/2019 BR.
CSCE156: Introduction to Computer Science II
structures and their relationships." - Linus Torvalds
Data Structures and Algorithms Lecture-1: Introduction
Presentation transcript:

PROGRAMMING LANGUAGE (JAVA) UNIT 42 BY ROBERT BUTTERFIELD TELEPHONE Data Structures and Algorithms (DSA)

What This Unit Is About This unit is about data structures and algorithms used in computer programming. Data structures are ways in which data is arranged in your computer's memory (or stored on disk). Algorithms are the procedures, the software program uses to manipulate the data in these structures.

Why use data structures Almost every computer program, even a simple one, uses data structures and algorithms. Example, consider a program that prints address labels. The program might use an array (more later) The array is the data structure, and the for loop used is the simple algorithm.

When do I need DSA For uncomplicated programs with small amounts of data, you could possibly just use an array. However: Programs that handle even moderately large amounts of data Programs that solve problems that are slightly out of the ordinary More sophisticated techniques are necessary. Simply knowing the syntax of a computer language such as Java isn't enough. This unit is about what you need to know after you've learned a programming language.

Edexcel unit description This unit provides the learner with a range of experiences in using the algorithms and data structures that underpin much of todays computing. The various techniques presented should be seen in the context of solving problems using computers. The unit aims to develop the formal concepts of data structures, algorithms and their relationships to each other and to the concepts of object-oriented programming. This should allow learners to develop solutions using data structures for a range of commercial needs.

Summary of learning outcomes 1. Apply concepts of abstraction in designing object- oriented data structures 1. Specify and implement abstract data types (ADTs) 1. Evaluate and implement data structures 2. Justify the selection of an appropriate data structure/algorithm.

Abstraction in designing object-oriented data structures Complexity: in software development, interfaces and encapsulation Definition of abstract data types: collection, structure Values, states, and objects: types and classes, encapsulation, inheritance

Abstract data types ADTs: look at examples of ADTs (stacks, queues) Implementation: look at how different data structures can implement the same ADT (arrays and single linked lists)

Data Structures Context: common complex data structures and typical applications Arrays: tables (hashed, lookup), matrices, dynamic memory, linked lists (single, double), tree (binary search trees) (Sample) Algorithms for data structures: appropriate algorithms include insert, delete, search and sort Code implementation: documented computer code that covers the range of data structures

Data structure/algorithm Applications: relevant application areas (research and review) Evaluation: criteria for the use of data structure/algorithms (selection of the most suitable data structure) Testing: algorithm, measure of efficiency

Outcomes and assessment criteria 1 Apply concepts of abstraction in designing object- oriented data structures Determine appropriate properties and methods for data structures Produce specifications for object-oriented data Structures Extend specifications of data structures to a subclass of data structure

Outcomes and assessment criteria 2 Specify and implement abstract data types (ADTs) Produce a specification of an ADT Implement ADTs Describe alternative methods of implementing the ADT

Outcomes and assessment criteria 3 Evaluate and implement data structures describe how basic operations are implemented on data structures (such as inserting into a tree) Describe a typical application where such a data structure may be found Write code to implement a selection of data structures

Outcomes and assessment criteria 4 Justify the selection of an appropriate data structure/algorithm Review current uses of data structures within application areas Perform estimates of the resource and time requirements for a data structure/algorithm Justify the selection of the most appropriate data structure/algorithm for a given application

Important You should possess significant experience in programming before attempting this unit. This unit links with: Unit 30: Java Programming, Unit 32: Maths for Software Development, Unit 36: OOP Programming, Unit 37: VB Enterprise Development, Unit 38: Visual Programming Development and Unit 39: Visual Programming Fundamentals.