110 likes | 238 Views
CS 233 Data Structures and Algorithms. 황승원 Fall 2010 CSE, POSTECH. x=2. y=4. What Is This Course About?. f=x+2. data. data. What Is This Course About?. data: list of phone #s. procedure: find a match. computer program. data: 279-2358. What Is This Course About?.
E N D
CS 233Data Structures and Algorithms 황승원 Fall 2010 CSE, POSTECH
x=2 y=4 What Is This Course About? f=x+2
data data What Is This Course About? data:list of phone #s procedure:find a match computer program data:279-2358
What Is This Course About? • The computer program development process requires us to • represent data in an effective way • develop an efficient procedure (algorithm), which can be implemented as a computer program e.g., telephone directory • Effective data representation ⇒ data structures • Development of an efficient step-by-step procedure ⇒ algorithm design methods • The study of data structures and algorithms is fundamental to computer sciencee.g., interviews
Course Homepage • Instructor: 황승원 (TA: 이동주) • http://www.postech.ac.kr/~swhwang/cs233.html • Announcements, assignments, feedbacks, etc. • Related web site (linked at the class homepage) • http://www.mhhe.com/engcs/compsci/sahnijava/
Evaluation • Homeworks – 15% (~ 5) • Assignments - 15% (~ 3) • Midterm Exam - 30% • Final Exam - 35% • Class Participation - 5%
Tentative Class Schedule: 1st half • Week 1 : Overview and Program Performance (Chapters 1-2) • Week 2-3 : Linear Lists (Chapters 5-7) • Week 4-5 : Array, Matrices, Stacks, Queues, Hashing (Chapters 8-10) • Week 6 : Trees (Chapter 12) • Week 7 : Priority Queue (Chapter 12) • Week 8 : Review and Midterm Exam
Tentative Class Schedule: 2nd half • Week 9 : Tournament Trees (Chapter 14) • Week 10 : Binary Search Trees (Chapter 15-16) • Week 11 : Graphs (Chapter 17) • Week 12 : Greedy Algorithms (Chapter 18) • Week 13 : Divide and Conquer Algorithms (Chapter 19) • Week 14 : Dynamic Programming Algorithms (Chapter 20) • Week 15 : Branch and Bound Algorithms (Chapter 21-22) • Week 16 : Review and Final exam
How to get an “A”? • Take responsibility in learning • Make sure to catch up (w/ readings and exercises) • Build good reading/thinking habits • Reading to get the “big picture”e.g., compare/contrast different structures • Thinking to smart up and analyze your codes (beating JAVA for 21 days/dummies) • Learn to participate 0 10 shy-o-meter classroom bulletin board office hour anonymous
Ice Breaker • Name • Major/Year • Something memorable about yourself (or your summer)
Coming Up Next • READING: Chapter 1 • NEXT: Programming Performances (Chapter 2-3)