COMPUTER ENGINEERING (ENGLISH, PHD) | |||||
PhD | TR-NQF-HE: Level 8 | QF-EHEA: Third Cycle | EQF-LLL: Level 8 |
Course Code | Course Name | Semester | Theoretical | Practical | Credit | ECTS |
CMP6138 | Analysis of Algorithms | Fall | 3 | 0 | 3 | 6 |
The course opens with the approval of the Department at the beginning of each semester |
Language of instruction: | En |
Type of course: | Must Course |
Course Level: | |
Mode of Delivery: | Face to face |
Course Coordinator : | Dr. Öğr. Üyesi TEVFİK AYTEKİN |
Course Lecturer(s): |
Prof. Dr. NAFİZ ARICA |
Course Objectives: | Rigorous analysis of the time and space requirements of important algorithms, including worst case, average case, and amortized analysis will be done. Techniques include order-notation, recurrence relations, etc. Analysis of the key data structures: trees, hash tables, balanced tree schemes, priority queues, Fibonacci and binomial heaps will be presented. Algorithmic paradigms such as divide and conquer, dynamic programming will be introduced. Selected advanced algorithms will be explored. |
The students who have succeeded in this course; I. Apply basic algorithm analysis methodology II. Implement and analyze sorting algorithms III. Implement and analyze recurrent algorithms and tree structures IV. Model problems with heaps and queues and analyze runtime characteristics V. Model problems with graphs VI. Optimize problems with dynamic programming VII. Independently choose and investigate new algorithms when needed. |
Complexity of functions, sorting algorithms, recurrences, trees, heaps and priority queues, graph algorithms, dynamic programming, special techniques. |
Week | Subject | Related Preparation | |
1) | Introduction | ||
2) | Growth of functions | ||
3) | Basic Sorting Algorithms | ||
4) | Advanced Sorting Algorithms | ||
5) | Recurrences | ||
6) | Trees 1 | ||
7) | Trees 2 | ||
8) | Midterm | ||
9) | Heaps and Priority Queues | ||
10) | Graph Algorithms 1 | ||
11) | Graph Algorithms 2 | ||
12) | Dynamic Programming | ||
13) | Special Techniques | ||
14) | Project presentations |
Course Notes: | "Introduction to Algorithms" Thomas H. Cormen, The MIT Press |
References: |
Semester Requirements | Number of Activities | Level of Contribution |
Attendance | % 0 | |
Laboratory | % 0 | |
Application | % 0 | |
Field Work | % 0 | |
Special Course Internship (Work Placement) | % 0 | |
Quizzes | % 0 | |
Homework Assignments | % 0 | |
Presentation | % 0 | |
Project | 1 | % 35 |
Seminar | % 0 | |
Midterms | 1 | % 25 |
Preliminary Jury | % 0 | |
Final | 1 | % 40 |
Paper Submission | % 0 | |
Jury | % 0 | |
Bütünleme | % 0 | |
Total | % 100 | |
PERCENTAGE OF SEMESTER WORK | % 25 | |
PERCENTAGE OF FINAL WORK | % 75 | |
Total | % 100 |
Activities | Number of Activities | Duration (Hours) | Workload |
Course Hours | 14 | 3 | 42 |
Laboratory | 0 | 0 | 0 |
Application | 0 | 0 | 0 |
Special Course Internship (Work Placement) | 0 | 0 | 0 |
Field Work | 0 | 0 | 0 |
Study Hours Out of Class | 0 | 0 | 0 |
Presentations / Seminar | 0 | 0 | 0 |
Project | 1 | 72 | 72 |
Homework Assignments | 0 | 0 | 0 |
Quizzes | 0 | 0 | 0 |
Preliminary Jury | 0 | ||
Midterms | 1 | 40 | 40 |
Paper Submission | 0 | ||
Jury | 0 | ||
Final | 1 | 40 | 40 |
Total Workload | 194 |
No Effect | 1 Lowest | 2 Low | 3 Average | 4 High | 5 Highest |
Program Outcomes | Level of Contribution | |
1) | Ability to identify and apply advanced concepts in computer engineering | |
2) | Cooperate efficiently in intra-disciplinary and multi-disciplinary teams. | |
3) | Have theoretical and practical basis in computer engineering and science to be able to conduct related academic research independently. | |
4) | Ability to apply advanced mathematical and engineering knowledge on real problems. | |
5) | Ability to search the scientific literature related to a research project and find the relationships with own research | |
6) | Ability to interprete scientific research and use the findings | |
7) | Ability to work efficiently in interdisciplinary research teams | |
8) | Ability to attain scientific knowledge | |
9) | Ability find ways to improve upon current knowledge | |
10) | Ability to present research findings in seminars and conferences | |
11) | Ability to write research progress reports by referring to published theses and papers. | |
12) | Ability to show the responsibility of professional and ethical behavior |