Algorithms and Practice (Spring Semester, 2019 – CPA341)
“Studentteacher 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”
1. Course Schedule & Lecture Notes
 March 04 – Introduction to Course

March 07 – Algorithms: Efficiency, Analysis, and Order – I

March 11 – Algorithms: Efficiency, Analysis, and Order – II

March 14 – Algorithms: Efficiency, Analysis, and Order – III

March 25 – DivideandConquer – III

March 28 – DivideandConquer – IV
 참고
 HW3 (Due Date: April 07, 2019)

April 01 – Term Project 설명, Dynamic Programming – I

April 04 – Dynamic Programming – II
 May 06 – 어린이날 (대체휴일)

May 09 – The Greedy Approach – IV

May 13 – The Greedy Approach – V

May 16 – Backtracking – I

May 20 – Backtracking – II

May 23 – Backtracking – III
 June 03 – BranchandBound – III
 June 06 – BranchandBound – IV & Hash
 June 09 (일요일) – 텀프로젝트 제출 (23:59까지)
 June 10 – 마지막 강의: Theory of P & NP (P.367~P.392)
 June 13 – 기말고사
 June 17 – Term Project Presentation (출석 체크함)
2. Course Information
 Lecturer: YounHee Han (Rm. 423, Tel: 5601486, yhhan@koreatech.ac.kr)
 Classes: Monday (09:0011:00), Thursday (11:0013:00)
 Lecture Room: 409호
 수업조교(TA): 황규영 석사과정 (email: to6289@koreatech.ac.kr)
 Course Board(숙제 제출 사이트): http://el.koreatech.ac.kr
 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.
3. Term Project Guide
 주제: 변형 픽셀게임 알고리즘 개발
 조 구성 원칙: 동일 지도교수님 지도하의 2인 1조 (조 구성에 어려움이 있는 사람은 개별적으로 Contact)
 4월 17일 (수요일) 까지 조를 구성하여 대표 한명이 조교(to6289@koreatech.ac.kr)에게 이메일로 알림
 제출기한: 2019년 6월 09일 일요일
4. Term Project 조
 1조 : 박권규, 박준석
 2조 : 허윤석, 김형종
 3조 : 김형기, 문준혁
 4조 : 김기백, 김도겸, 이우재
 5조 : 권수현, 정소진
 6조 : 김영준, 이재성
 7조 : 소형섭, 정상우
 8조 : 이주현, 김승규
 9조 : 신진경, 오지원
 10조 : 김병록, 박찬수
 11조 : 정현석, 최승용
 12조 : 갈동건, 정민수
 13조 : 신한철, 손우영
 14조 : 구정훈, 윤재호
 15조 : 조성웅, 손성빈
 16조 : 오세한, 안태영
 17조 : 이경형, 지재형
 18조 : 유혜원, 이수경
 19조 : 서준태, 김형준
5. Reference
 주교재: 도경구 역, Foundations of Algorithms Using Java Pseudocode, 사이텍미디어 (원저자: Richard Neapolitan and Kumarss Naimipour) Click
 원서: Neapolitan, R. and Naimipour, K. (2004) Foundations of Algorithms using Java Pseudocode, Jones and Bartlett Publishers, Sudbury, Mass
6. Logistics
 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’.
7. Evaluation
 Attendance (10%), Private Report(15%), Midterm exam (30%), Final exam (30%), Term Project (15%)