200 likes | 385 Vues
Data Structure & Algorithm. Lecture 1 – Course Introduction JJCAO. Steal some from Prof. Yoram Moses. 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.
E N D
Data Structure & Algorithm Lecture 1 – Course Introduction JJCAO Steal some from Prof. Yoram Moses
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
Problem Solving by Computer input Manipulation output
Problem Solving by Computer input Algorithm output
What is an Algorithm? Data input Data manipulation Data output
Purpose of learning the course: Solving problems by computer • Data: information being analyzed e.g.: numbers, words, movies • Algorithm: a computational procedure for solving a problem • Data structure: The way the data is organized
Objectives and Philosophy • Objectives • Scientist (thesis + research) • IT, even other job (interview + work) • Mathematician + programmer in short period • Coding with C++ • Design appropriatedata structures • Implement smart algorithms • Philosophy • Interest examples driven • Useful Problems driven • Practice makes perfect!
Preliminary Knowledge • Little programming background is acceptable • IDE: Visual C++ 2010 • Language: C++ • How to learn them now? • Learning by practice (homework assigned in this course)
讨论 • 各位目标 • 学好? • 考试高分 • 编程高手 • 混学分? • 应付考试 • 希望的技能 • C or C++? • Turbo C/C++ or Visual C/C++? • 授之以鱼,不如授之以渔 • Enjoy coding
Course Introduction • 48 hours / 3credits • Final Grade = 30%*(Overall grade) +70% *(Score on Final Exam) • Overall grade: attendance, homework, midterm exam • 不允许抄袭!
How to teach/learn? Data Structure & Algorithm “秘诀在于,我摸索出一套有效的方法, 能够在最短的时间内, 帮助学生快速提高编程的能力!” • -- 刘利刚 • http://www.math.zju.edu.cn/ligangliu/Resources/GraduateRecruiting.htm
Requirements(1) • 代码编写 • 符合一定的规范 • 代码清晰 • 适当注释
Requirement(2) • 作业提交 • 文档说明:运行参数,操作等 • 编译通过,程序能运行 • 压缩打包上载到课程FTP • 去除不必要的文件,如\debug目录 • 文件命名规则: DA_yourID_HomeworkID#_name.zip • 举例:20091003_Homework1_张三.zip
Requirement(3) • 必须在规定的最后期限之前递交 • 超过最后期限,扣分
Requirement(4) • 独立完成 • 相互帮助 • 团队合作 • 绝不允许抄袭!
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
References Books • [CLRS] T.H. Cormen, C.E. Leiserson and R.L. Rivest, Introduction to Algorithms • [Skiena2] Steven S. Skiena, The Algorithm Design Manual 2nd, http://www.algorist.com/ • [Samet] HananSamet, Foundations of Multidimensional and Metric Data Structures • [Lafore24] Robert Lafore, Teach yourself data structures and algorithms in 24 hours • [LRJ21], Teach Yourself C++ in One Hour a Day • [McConnel2] Steve McConnell, Code Complete, 2nd
Reference Courses • ZJU 06191170, Data Structure, 2011, http://www.math.zju.edu.cn/ligangliu/Courses/DataStructure_2010-2011/default.htm • 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/ • SBU CSE 373, Analysis of Algorithms, 2011 (Steven S. Skiena,Comprehensive) http://www.cs.sunysb.edu/~skiena/373/
Referenced websites • http://www.algolist.net/