ITEC 2620M Introduction to Data Structures Instructor: Prof. Z. Yang Course Website: ec2620m.htm Office: Tel 3049.

Slides:



Advertisements
Similar presentations
COMP171 Data Structures and Algorithms Spring 2009.
Advertisements

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.
CMPT 225 Data Structures and Programming. Course information Lecturer: Jan Manuch (Jano), TASC TAs: Osama Saleh,
1-1 CMPT 225 Data Structures and Programming Instructor: Aaron Hunter Section: E300 Campus: Harbour Centre Semester: Spring 2007.
CSCE 210 Data Structures and Algorithms
COMP171 Data Structures and Algorithms Spring 2009.
1 CENG 707 Data Structures and Algorithms Nihan Kesim Çiçekli Department of Computer Engineering Middle East Technical University Fall 2010.
June 13, Introduction to CS II Data Structures Hongwei Xi Comp. Sci. Dept. Boston University.
Administrivia- Introduction CSE 373 Data Structures.
CS 206 Introduction to Computer Science II 04 / 29 / 2009 Instructor: Michael Eckmann.
CS 206 Introduction to Computer Science II 12 / 10 / 2008 Instructor: Michael Eckmann.
COMP171 Data Structures and Algorithm Qiang Yang Lecture 1 ( Fall 2006)
CENG 213 Data Structures Department of Computer Engineering Middle East Technical University Fall 2014 CENG 213 Data Structures 1.
July 16, Introduction to CS II Data Structures Hongwei Xi Comp. Sci. Dept. Boston University.
CSCE 3110 Data Structures and Algorithm Analysis.
Data Structures and Programming.  John Edgar2.
Data Structures & Agorithms Lecture-1: Introduction.
METU Computer Engineering Department
© 2004 Goodrich, Tamassia CS2210 Data Structures and Algorithms Lecture 1: Course Overview Instructor: Olga Veksler.
Teaching Teaching Discrete Mathematics and Algorithms & Data Structures Online G.MirkowskaPJIIT.
CS223 Algorithms D-Term 2013 Instructor: Mohamed Eltabakh WPI, CS Introduction Slide 1.
Data Structures and Programming.  Today:  Administrivia  Introduction to 225, Stacks  Course website: 
1 CS 233 Data Structures and Algorithms 황승원 Fall 2010 CSE, POSTECH.
CSCA48 Course Summary.
CSC 212 – Data Structures Prof. Matthew Hertz WTC 207D /
ITEC 2620A Introduction to Data Structures
COMPE 226 Data Structures 2015 Fall Murat KARAKAYA Department of Computer Engineering.
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.
Instructor Information: Dr. Radwa El Shawi Room: Week # 1: Overview & Review.
DATA STRUCTURES (CS212D) Week # 1: Overview & Review.
CS212: DATA STRUCTURES Lecture 1: Introduction. What is this course is about ?  Data structures : conceptual and concrete ways to organize data for efficient.
Data Structures (Second Part) Lecture 1 Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University.
COMP2012 Object-Oriented Programming and Data Structures Fall 2015.
CMSC 2021 CMSC 202 Computer Science II for Majors Fall 2002 Mr. Frey (0101 – 0104) Mr. Raouf (0201 – 0204)
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Course Introduction.
Chapter 1 Data Structures and Algorithms. Primary Goals Present commonly used data structures Present commonly used data structures Introduce the idea.
ITEC 2620M Introduction to Data Structures Instructor: Prof. Z. Yang Course Website: ec2620m.htm Office: TEL 3049.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Course Introduction.
CMSC 2021 CMSC 202 Computer Science II for Majors Spring 2003 Mr. Frey (0101 – 0104) Mr. Raouf (0201 – 0204)
ITEC 2620M Introduction to Data Structures Instructor: Prof. Z. Yang Course Website: ec2620m.htm Office: Tel 3049.
1 Data Structures CSCI 132, Spring 2014 Lecture 1 Big Ideas in Data Structures Course website:
Course Info Instructor U.T. Nguyen Office: CSEB Office hours: Tuesday, 14:30-15:30 Thursday, 12:00-12:45 By.
Course Introductions.  Introduction to java  Basics of Java  Classes & Objects  Java Collections and APIs  Algorithms and their analysis  Recursion.
ITEC 2620M Introduction to Data Structures Instructor: Prof. Z. Yang Course Website: ec2620m.htm Office: TEL 3049.
Data Structures By Dr. Mehedi Masud ِAssociate Professor, Computer Science Dept. College of Computers and Information Systems Taif University 1.
ITEC 2620M Introduction to Data Structures Instructor: Prof. Z. Yang Course Website: 20m.htm Office: TEL 3049.
BITS Pilani Pilani Campus Data Structure and Algorithms Design Dr. Maheswari Karthikeyan Lecture1.
CMPT 238 Data Structures Instructor: Tina Tian. General Information Office: RLC 203A Office Hour: Tue and Fri 12:30 - 2:00PM.
ITEC 2620M Introduction to Data Structures Instructor: Prof. Z. Yang Course Website: ec2620m.htm Office: TEL 3049.
1 CENG 707 Data Structures and Algorithms Nihan Kesim Çiçekli Department of Computer Engineering Middle East Technical University Fall 2013.
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.
COMP9024: Data Structures and Algorithms Course Outline Hui Wu Session 1, 2016
CSCE 210 Data Structures and Algorithms
CENG 707 Data Structures and Algorithms
COMP9024: Data Structures and Algorithms
March 27 – Course introductions; Adts; Stacks and Queues
CENG 213 Data Structures Dr. Cevat Şener
CMPT 238 Data Structures Instructor: Tina Tian.
Computer Science 102 Data Structures CSCI-UA
Introduction CSE 373 Data Structures.
CENG 213 Data Structures Nihan Kesim Çiçekli
ITEC 2620M Introduction to Data Structures
Data Structures: Introductory lecture
ITEC 2620M Introduction to Data Structures
ITEC 2620M Introduction to Data Structures
Administrivia- Introduction
Administrivia- Introduction
CSCE156: Introduction to Computer Science II
CMPT 238 Data Structures Instructor: Tina Tian.
Presentation transcript:

ITEC 2620M Introduction to Data Structures Instructor: Prof. Z. Yang Course Website: ec2620m.htm Office: Tel 3049

2 Course Objective Course is about concepts –what you can program, not how Traditionally, second course in computer science –still separates top third of programmers –not taught in any known college diploma program Learn and use efficient programming patterns –“an efficient programmer can often produce programs that run five times faster than an inefficient programmer”

3 Textbooks “A Practical Introduction to Data Structures and Algorithm Analysis – Java Edition” by Clifford A. Shaffer Lecture notes and announcements will be made available at: ec2620m.htm

4 Marking Scheme Assignment 1: 10% Midterm: 30% –about 1/3 code, 2/3 concepts Final: 60% –about 1/3 code, 2/3 concepts Late Policy –The assignment is optional. Late assignments will NOT be accepted. If you miss it, the weight will be added to the weight of the TWO PROGRAMMING QUESTIONS in the final exam. No medical note is required. A make-up midterm will NOT be provided. If you miss the midterm, the weight will be added to the weight of the final exam.

5 Schedule LectureTopic 1aIntroduction 1bSearching 2aSorting – non-recursive algorithms 2bEstimation and Complexity analysis – non-recursive algorithms 3aMore complexity analysis, Complexity estimation – non-recursive algorithms 3bLinked lists 4aDoubly linked lists and Binary trees 4bRecursion and Binary tree operations

6 Schedule (Cont’d) Lecture Topic 5aSorting – recursive algorithms 5bLink list and BST operations 6aComplexity estimation – recursive algorithms 6b Midterm review 7aMIDTERM 7bEstimation of recursive algorithm, abstract data types and Stacks 8aStack based recursion, Queues, Priority Queues 8bMidterm solution discussion

7 Schedule (Cont’d) LectureTopic 9aHeaps and Heapsort 9bGraphs and Graph algorithm 10a Hashing 10b2-3 trees 11aB-trees 11bB+trees 12aReview 12bReview

8 Course Organization Key concepts first –searching, sorting, complexity analysis, linked structures Concrete to concept –searching  sorting  complexity analysis –binary tree  recursion

Chapter 1 Introduction

10 Need for Data Structure Computer –Store and retrieve information –Perform calculation Costs and benefits –A data structure requires a certain amount of space for each data item it stores, a certain amount of time to perform a single basic operation, and a certain amount of programming effort.

11 Problem, Algorithms and Programs Problem: a task to be performed Algorithm: a method or a process followed to solve a problem Program: an instance, or concrete representation, of an algorithm in some programming language.

12 Algorithm Efficiency Design goals: –Design an algorithm that is easy to understand, code, and debug. –Design an algorithm that makes efficient use of the computer’s resources. Algorithm analysis

13 Three keys to programming Algorithm Design –Sequence, branching, looping – flowcharts and pseudocode –Efficiency and time-space tradeoffs (linkages between algorithms and data structures) Data Organization –objects and classes –data structures Modularization –methods (modularization of algorithms) –classes and inheritance (modularization of data/objects)