20
Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

Embed Size (px)

Citation preview

Page 1: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

Data Structure & Algorithm

Lecture 1 – Course Introduction

JJCAO

Steal some from Prof. Yoram Moses

Page 2: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

2

Course Introduction

• Lecturer: Junjie Cao• Email: jjcao @ dlut.edu.cn• Webpage for the course:– http://

www.jjcao.net/algorithmdatastructure.html

– http://www.jjcao.net/c.html

Page 3: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

3

Problem Solving by Computer

Manipulation

input

output

Page 4: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

4

Problem Solving by Computer

Algorithm

input

output

Page 5: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

5

What is an Algorithm?

Data

Data

Data manipulation

input

output

Page 6: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

6

Purpose of learning the course: Solving problems by computer

• Data: information being analyzede.g.: numbers, words, movies

• Algorithm: a computational procedure for solving a problem

• Data structure: The way the data is organized

Page 7: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

7

Objectives and Philosophy

• Objectives– Scientist (thesis + research)– IT, even other job (interview + work)– Mathematician + programmer in short period

• Coding with C++• Design appropriate data structures• Implement smart algorithms

• Philosophy– Interest examples driven– Useful Problems driven– Practice makes perfect!

Page 8: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

8

Preliminary Knowledge

1. Little programming background is acceptable

2. IDE: Visual C++ 20103. Language: C++

• How to learn them now?– Learning by practice (homework assigned

in this course)

Page 9: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

讨论• 各位目标– 学好?

• 考试高分• 编程高手

– 混学分?• 应付考试

• 希望的技能– C or C++?– Turbo C/C++ or Visual C/C++?

• 授之以鱼,不如授之以渔• Enjoy coding

Page 10: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

10

Course Introduction• 48 hours / 3credits

• Final Grade = 30%*(Overall grade) +70% *(Score on Final Exam)

• Overall grade: attendance, homework, midterm exam

不允许抄袭!

Page 11: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

11

How to teach/learn? Data Structure & Algorithm

-- 刘利刚http://www.math.zju.edu.cn/ligangliu/Resources/GraduateRecruiting.htm

“秘诀在于,我摸索出一套有效的方法,能够在最短的时间内,

帮助学生快速提高编程的能力!”

Page 12: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

Requirements(1)

• 代码编写–符合一定的规范–代码清晰–适当注释

Page 13: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

Requirement(2)

• 作业提交–文档说明:运行参数,操作等–编译通过,程序能运行–压缩打包上载到课程 FTP• 去除不必要的文件,如 \debug目录• 文件命名规则 :

DA_yourID_HomeworkID#_name.zip • 举例: 20091003_Homework1_张三 .zip

Page 14: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

Requirement(3)

• 必须在规定的最后期限之前递交• 超过最后期限,扣分

Page 15: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

Requirement(4)

• 独立完成• 相互帮助• 团队合作

•绝不允许抄袭!

Page 16: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

Course FTP

• ftp://202.118.75.60:21– Username: homework– Password: homework• 只有上载权限,没有下载和删除等其他权限

• Hand in your homework– Upload by FTP– DON’T send via E-mail

Page 17: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

17

References Books1. [CLRS] T.H. Cormen, C.E. Leiserson and R.L. Rivest, Introduction to

Algorithms2. [Skiena2] Steven S. Skiena, The Algorithm Design Manual 2nd, http

://www.algorist.com/

3. [Samet] Hanan Samet, Foundations of Multidimensional and Metric Data Structures

4. [Lafore24] Robert Lafore, Teach yourself data structures and algorithms in 24 hours

5. [LRJ21], Teach Yourself C++ in One Hour a Day6. [McConnel2] Steve McConnell, Code Complete, 2nd

Page 18: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

18

Reference Courses

1. ZJU 06191170, Data Structure, 2011, http://www.math.zju.edu.cn/ligangliu/Courses/DataStructure_2010-2011/default.htm

2. Technion 044268, Introduction to Data Structures and Algorithms, 2009 (Interesting sliders, homework and Reading Material are not in English), http://eecourses.technion.ac.il/044268/

3. SBU CSE 373, Analysis of Algorithms, 2011 (Steven S. Skiena, Comprehensive) http://www.cs.sunysb.edu/~skiena/373/

Page 19: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

19

Referenced websites

• http://www.algolist.net/

Page 20: Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses

20

Computer Graphics & Vision