Algorithms and Practice (Spring Semester, 2015 - CPA341)

*"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 03] Introduction to Course Course Guide, PageRank Algorithm
* [March 05] Algorithms: Efficiency, Analysis, and Order - I Ch01-1.ppt, SearchMain.java, FibonacciMain.java, HW-1.ppt
* [March 10] Algorithms: Efficiency, Analysis, and Order - II Ch01-2.ppt
* [March 12] Algorithms: Efficiency, Analysis, and Order - III Ch01-3.ppt, 보충 자료
* [March 17] Divide-and-Conquer - I Ch02-1.ppt, HW-2
* [March 19] Divide-and-Conquer - II Ch02-2.ppt, SortMain.java
* [March 24] Divide-and-Conquer - III Ch02-3.ppt, SortMain2.java, Merge-Sort Animation
* [March 26] Divide-and-Conquer - IV
* [March 31] Divide-and-Conquer - V Ch02-4.ppt, HW-3
* [April 02] Dynamic Programming - I Ch03-1.ppt, Binomial.java, Floyd.java
* [April 07] Dynamic Programming - II Ch03-2.ppt
* [April 09] Dynamic Programming - III
* [April 14] Dynamic Programming - IV Ch03-3.ppt, HW-4
* [April 16] Dynamic Programming - V Ch03-4.ppt, TSP Example
* [April 21] (No Lecture)
* [April 23] *Midterm Exam.* Rating
* [April 28] The Greedy Approach - I Ch04-1.ppt
* [April 30] The Greedy Approach - II
* [May 05] (No Lecture)
* [May 07] The Greedy Approach - III Ch04-2.ppt, Dijkstra.java
* [May 12] The Greedy Approach - IV Ch04-3.ppt
* [May 14] The Greedy Approach - V Ch04-4.ppt, HW-5
* [May 19] Backtracking - I Ch05-1.ppt
* [May 21] Backtracking - II Ch05-2.ppt
* [May 26] Branch-and-Bound - I Ch06-1.ppt, HW-6, Nqueens.java
* [May 28] Branch-and-Bound - II Ch06-2.ppt
* [June 02] Branch-and-Bound - III, Hash (8.4) Ch08.ppt
* [June 04] Machine Learning Algorithm: K-Means Algorithm KMeansExample.doc, K-Means Javascript Program
* [June 09] Theory of P & NP (P.367~P.392) Ch09.ppt
* [June 11] *Final Exam.*
* [June 16] *Term Project Presentation*
   - 텀프로젝트 대전 결과: Click
   - 1등부터 4등까지의 조는 PPT 발표자료 5~10페이지 정도를 구성하여 16일 강의시간에 알고리즘 설계 전략을 발표해야 합니다.
* Lecturer: Youn-Hee Han (Rm. B303, Tel: 560-1486, yhhan@kut.ac.kr)
* Classes: Tuesday (16:00-17:50), Thursday (09:00-10:50)
* Lecture Room: Tuesday - B101 / Thursday - A312
* TA: 김경한 (e-mail)
* 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.
Term Project Guide
* 주제: Pixel 게임 알고리즘 구현 및 리그전
* Pixel Project 설명: PixelTermProject.ppt
* 참고사이트: Click!
* Pixel Project Source Code: Pixel.zip
* 조 구성 원칙: 동일 지도교수님 지도하의 2인 1조 (조 구성에 어려움이 있는 사람은 개별적으로 Contact)
  - 4월 7일 (화요일) 수업시간 전까지 조를 구성하여 대표 한명이 조교에게 이메일 (교과목 교수님을 참조)로 알림
* 제출기한: 2015년 6월 13일 토요일

Term Project 조
* 1조 : 이대현, 현경수
* 2조 : 고현영, 김철우
* 3조 : 서성민, 백지선
* 4조 : 정주원, 황인철
* 5조 : 최지민, 조은비
* 6조 : 신정철, 김영근
* 7조 : 김경준, 최고은
* 8조 : 이창환, 김호연
* 9조 : 김범영, 정경택
* 10조 : 김진성, 임주성
* 11조 : 송영제, 조민우
* 12조 : 강주완, 황상혁
* 13조 : 박주현, 황동현
* 14조 : 정승욱, 현의환
* 15조 : 방준호, 정우진
* 16조 : 김형수, 임재승
* 17조 : 유민호, 이강운


# 조구성에 잘못된 점이 있다면 메일보내주세요! (mail : goslim56@gmail.com / 김경한 )
References
* 주교재: 도경구 역, 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

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'.

Evaluation
* Attendance (10%), Private Report(15%), Midterm exam (30%), Final exam (30%), Term Project (15%),