Graduate
Institute of Graduate Studies
Mathematics And Computer Science
Anlık RSS Bilgilendirmesi İçin Tıklayınız.Düzenli bilgilendirme E-Postaları almak için listemize kaydolabilirsiniz.

Mathematics And Computer Science Main Page / Program Curriculum / Advanced Algorithm Design Techniques

Advanced Algorithm Design Techniques

Course CodeSemester Course Name LE/RC/LA Course Type Language of Instruction ECTS
YMB0005 Advanced Algorithm Design Techniques 3/0/0 DE Turkish 7
Course Goals
The goal of this course is to introduce students the advanced techniques for algorithm analysis and design.
Prerequisite(s) None
Corequisite(s) None
Special Requisite(s) Algorithm Analysis and Design lecture is required to be taken during undergraduate education. Basic programming skills in C/C++ and (in order to follow the course resources) adequate English knowledge are also necessary to follow this course.
Instructor(s) Assist. Prof. Dr. Levent ÇUHACI
Course Assistant(s) None
Schedule Monday, 15:00-18:00, 3-A-09
Office Hour(s) Assist.Prof.Dr. Levent Cuhacı, office phone : 4359
Teaching Methods and Techniques - Lecture
- Implementations of the algorithms using C/C++.
Principle Sources - Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, Introduction To Algorithms, 3rd ed,  The MIT Press, 2009.
Other Sources - Michael T. Goodrich, Roberto Tamassia,Algorithm Design : Foundations, Analysis and Internet Examples, John Wiley & Sons Inc., 2002.

 - MIT OpenCourseWare Web Site : http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-introduction-to-algorithms-sma-5503-fall-2005/
Course Schedules
Week Contents Learning Methods
1. Week Asymptotic Notation, Divide and Conquer Method Lecture, Implementation
2. Week Overview of Sorting Algorithms : Insertion Sort, Quicksort, Merge Sort, Heapsort Lecture, Implementation
3. Week Dynamic Programming : Rod Cutting Problem, Longest Common Subsequence Problem Lecture, Implementation
4. Week Greedy Algorithms Lecture, Implementation
5. Week B-Trees Lecture, Implementation
6. Week Fibonacci Heaps Lecture, Implementation
7. Week Graph Algorithms I : Breadth-first Search, Depth-First Search Lecture, Implementation
8. Week Graph Algorithms II : Minimum Spanning Trees, Shortest Path Algorithms Lecture, Implementation
9. Week Graph Algorithms III : Maximum Flow Problem Lecture, Implementation
10. Week Midterm Exam Exam
11. Week Multithreaded Algorithms : Matrix Multiplication, Merge Sort Lecture, Implementation
12. Week Number-Theoretic Algorithms : Extended Euclid Algorithm, Miller-Rabin Primality Test, Integer Factorization Lecture, Implementation
13. Week String Matching Algorithms Lecture, Implementation
14. Week Computational Geometric Algorithms : Line Segment Algorithms, Finding the Closest Pair of Points Lecture, Implementation
15. Week Final Exams Week Exam
16. Week Final Exams Week Exam
17. Week Final Exams Week Exam
Assessments
Evaluation tools Quantity Weight(%)
Midterm(s) 1 30
Homework / Term Projects / Presentations 1 10
Final Exam 1 50


Program Outcomes
PO-1Have scientific research in mathematics and computer science in the level of theoretical and practical knowledge.
PO-2On the basis of undergraduate level qualifications, develop and deepen the same or a different areas of information at the level of expertise, and analyze and interpret by using statistical methods
PO-3Develop new strategic approaches for the solution of complex problems encountered in applications related to the field and unforeseen and take responsibility for the solution.
PO-4Evaluate critically skills acquired in the field of information in the level of expertise and assess the learning guides.
PO-5Transfer current developments in the field and their work to the groups inside and outside the area supporting with quantitative and qualitative datas as written, verbal and visual by a systematic way.
PO-6Use information and communication technologies with computer software in advanced level.
PO-7Develop efficient algorithms by modeling problems faced in the field and solve such problems by using actual programming languages.
PO-8Respect to social, scientific, cultural and ethical values at the stages of data collection related to the field, interpretation, and implementation.
PO-9To solve problems related to the field, establish functional interacts by using strategic decision making processes.
PO-10Establish and discuss in written, oral and visual communication in an advanced level by using at least one foreign language.
Learning Outcomes
LO-1The student remembers previously learned knowledge about algorithms, asymptotic notation and fundemantal algorithm design techniques.
LO-2The student analyses the time and space complexity and correctness of the algorithms using theoretical tools and mathematical techniques.
LO-3The student studies efficient algorithms for a number of fundamental problems.
LO-4The student learns techniques for designing complex algorithms.
LO-5The student develops programs using different problem-solving approaches, and be able to recognize when a particular approach is most useful.
Course Assessment Matrix:
Program Outcomes - Learning Outcomes Matrix
 PO 1PO 2PO 3PO 4PO 5PO 6PO 7PO 8PO 9PO 10
LO 1
LO 2
LO 3
LO 4
LO 5