Algorithms and Practice (Spring Semester, 2012)

"Student-teacher relationships are based on trust. Acts, which violate this trust, undermine the educational process. Your classmates and the instructor will not tolerate violations of academic integrity"

Course Schedule & Lecture Notes
* [March 05] Introduction to Course Introduction.ppt
* [March 07] Review of Necessary Mathematics Mathematics Review, Java_Programming_Evironment, Examples of java.lang.Math Methods
* [March 12] Algorithms: Efficiency, Analysis, and Order - I Ch01-1,
* [March 14] Algorithms: Efficiency, Analysis, and Order - II Ch01-2,, HW-1
* [March 19] Algorithms: Efficiency, Analysis, and Order - III Ch01-3
* [March 21] Algorithms: Efficiency, Analysis, and Order - IV Ch01-4, See the page 24~27 of Complexity, HW-2
* [March 26] Divide-and-Conquer - I Ch02-1, ActivationRecord
* [March 28] Divide-and-Conquer - II
* [April 04] Divide-and-Conquer - III Ch02-2,
* [April 09] Divide-and-Conquer - IV Ch02-3, HW-3
* [April 11] (No Lecture, The Election Day)
* [April 16] Dynamic Programming - I Ch03-1,
* [April 18] Dynamic Programming - II Ch03-2,
* [April 23] Dynamic Programming - III Ch03-3, HW-4 (4차 숙제부터는 게시판 [Click]에 제출할 것)
* [April 25] Dynamic Programming - IV Ch03-4
* [April 30] *Midterm Exam.* 성적확인
* [May 02] The Greedy Approach - I Ch04-1
* [May 07] The Greedy Approach - II Ch04-2, TermProject,
* [May 09] The Greedy Approach - III Ch04-3
* [May 14] Backtracking - I Ch05-1
* [May 16] (No Lecture, Campus Festival)
* [May 21] Backtracking - II Ch05-2, HW-5
* [May 23] Branch-and-Bound - I (Backtracking - III) Ch06-1.ppt
* [May 28] (No Lecture, Birthday Of Lord Buddha)
* [May 30 - Supplementary Lecture] Branch-and-Bound - II, Branch-and-Bound - III Ch06-2.ppt, Ch06-3.ppt
* [June 04] Hashing & Clustering Algorithm Ch08.ppt, Clustering.ppt, KMeansExample.doc
* [June 06] (No Lecture, The Memorial Day)
* [June 11] Theory of P & NP Ch09.ppt
* [June 13] *Term Project Presentation* TermProject - 오목 리그전 결과 (1위 ~ 3위 까지 발표 준비해서 오세요. PPT 만들어 오면 더 좋습니다.)
* [June 18] *Final Exam.* 과제채점결과(수정본)
* *Term Project 채점 결과* - 2012_Omok_Term_Project_Rating.pdf
* Lecturer: Youn-Hee Han (Rm. B303, Tel: 560-1486,
* Classes: Monday (16:00-17:50), Wednesday (14:00-15:50)
* Lecture Room: 4 공학관 B206
* Course Board (숙제 제출 사이트): [Click]
1차 ~ 3차 숙제 검사 확인: homework1~3.xlsx
([2012년 4월 23일 공지 사항] *만약 제출을 이미 했는데 미제출로 표기되어 있다면 제출날짜가 표기된 화면 캡쳐를 증빙자료로 하여 다시 게시판에 제출할 것*)
* TA: 김찬명 (
* Prerequisites: 자료구조, 이산수학
* Course Description:
This course is about the design, analysis and use of algorithms. We will study a number of common algorithm design techniques. We will apply each technique to several problems so that we can see how to use the technique in a variety of problems and come to understand how to apply it in new situations. We will also solve some problems using several of the design techniques so that we can compare the different techniques and have a basis for selecting one over another. The algorithms that we use as examples are interesting and useful in their own right. The algorithms not only illustrate methods of design and analysis, but also solve common problems that arise in a variety of applications.
* 주교재: 도경구 역, Foundations of Algorithms Using Java Pseudocode, 사이텍미디어 (원저자: Richard Neapolitan and Kumarss Naimipour)
- 원서: Neapolitan, R. and Naimipour, K. (2004) Foundations of Algorithms using Java Pseudocode, Jones and Bartlett Publishers, Sudbury, Mass

* Attendance - one class absence will result in the deduction of two points out of 100 points. Five absences will not result in ten points deduction, but "failure" (i.e., grade 'F') in this course.
* Exam - there will be midterm exam and final exam for the evaluation of the knowledge learned from the class.
* Homework - much intensive homework will be set. Any cheating (or copying) will result in grade 'F'.
* Attendance (10%), Homework (10%), Midterm Exam. (30%), Final Exam. (30%), Term Project (20%)