Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

17
Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13

Transcript of Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Page 1: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Introduction to ECE 2401 Data Structure

Fall 2005

Chapter 0

Chen, Chang-Sheng

2005.09.13

Page 2: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Outline

• Administrative Stuff

• Course overview

• Why Study Data Structure

• Where to Go from Here

Page 3: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Administrative Stuff

• Undergraduate Course

• Web page

• Class mailing-list/Forum (possible)

• Reasonable preparation

• Requirements/Grading

• Computing Facility/Programming

Page 4: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

ECE 2401: Data Structure• Instructor: Dr. Chang-Sheng Chen ( 陳昌盛 )

– E-mail: [email protected]– Room 327/328 (*), Computer & Network Center (資訊館 )– Office hours: Wed 10:00 – 11:00 am (or by appointment)

• Teaching Assistant: Mr. C.S. Chang (張晉璿 ) – Office: Room 605, MIRC ( 電子資訊中心 , 電資大樓 )– E-mail: [email protected]

• Lecture Time & Place: –  Tue 15:40 - 17:30, Thu 16:40 - 17:30 ( Ed 112)

• Textbook:    – Nyhoff, Larry. (2005). "ADTs, Data Structure, and Problem

Solving with C++", 2nd Edition, Pearson Education, Inc.

Page 5: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.
Page 6: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Overview of the Text

• There are three main themes in the text1. Abstract Data Types ( ADTs)

• Collections of data elements together with basic operations on the data.

2. Data Structures

3. Problem Solving

Page 7: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Web Page

• The course web page can be found at– http://www.cc.nctu.edu.tw/~

cschen/courses/2005/ece2401.html – To be established later

• It has (will have) the syllabus, lecture notes, assignments, announcements, etc.

• You should check it from time to time for new stuff.

Page 8: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Preparation

• Basic algorithm and data structure analysis

• Ability to program– Knowledge of C++ for some programming

assignments.

• Some exposure to logic & probability

Page 9: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Tentative Grading Scheme:

• Mandatory Homework Assignments (30%) – There will be 5 or 6 assignments

• including coding assignments.

– Optional Term Design Project (possible/bonus)

• Midterm Exams (40%)– Mid-term 1 (20%)– Mid-term 2 (20%)

• Final Exam (30%)

Page 10: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Tentative Schedules (Assignment/Exams/Project)

• Assignments – 5 or 6 assignments (temporarily)– 2005/10/04– 2005/10/18– 2005/11/08– 2005/11/22– 2005/12/06– 2005/12/27

• Term Project (possible) • Exams Schedule ( temporarily):

– Mid-term-1 on 2005/10/27 (Thu, 50 min)– Mid-term-2 on 2005/12/01 (Thu, 50 min)– Final on 2006/01/10 (Tue, 100 minutes long)

Page 11: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Computing Facilities/Programming

• The programming for this class will be done using: – Microsoft Visual C++– Free versions are available for UNIX, Windows.

• GNU g++.• (I suppose) Most of the programming

assignments could be done using your own PC. – However, if necessary, we could installed

another Unix workstation (e.g., using FreeBSD/Linux ) and you could do your programming jobs there.

Page 12: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Important things about this CLASS

• Homework are to be submitted according to the TA's policy.– Assignments are due in class, at the beginning of

class, on the assigned due date.• Usually one week after assigning (e.g., unless

specified by TA otherwise, or you’ve made some arrangement with TA ahead of time).

– Graded homework will be available one week after submission.

– In principle, homework must be typed.• if there is difficulty, please contact TA in advance.

Page 13: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Important things about this CLASS (cont.)

• Homework Late Policy

–Late homework will be marked down 20% per day.

• Forbidden Things– Please don’t cheat, copy, plagiarize (剽竊 /盜用 ) or otherwise make my life and yours unpleasant.

Page 14: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Overview of the course (1)

1. Software Development

2. Introduction to Abstract Data Types.

3. Data Structures and Data Types

4. More about OOP and ADTs – Classes

5. Standard C++ Input/Output and String Classes

6. Lists.

7. Stacks.

8. Queues.

Page 15: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Overview of the course (2)

9. ADT Implementations: Templates and Standard Containers 

10. ADT Implementation: Recursion and Algorithm Analysis and Standard Algorithms.

11. More Liking Up with Linked Lists.

12. Searching: Binary Trees and Hash Tables.

13. Sorting

14. OOP and ADTs.

15. Trees. 16. Graphs and Digraphs.

Page 16: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Appendix in the Textbook

• Appendix A: ASCII Character Set.

Appendix B: Number Systems.

Appendix C: Basic C++.

Appendix D: Other C++ Features.

Appendix E: Answers to Quick Quizzes.

Page 17: Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng 2005.09.13.

Where to Go from Here

• Introduction to Algorithms & Analysis

• Introduction to Artificial Intelligence