INFORMATION TECHNOLOGIES (TURKISH, THESIS)
Master TR-NQF-HE: Level 7 QF-EHEA: Second Cycle EQF-LLL: Level 7

Course Introduction and Application Information

Course Code Course Name Semester Theoretical Practical Credit ECTS
CMP6138 Analysis of Algorithms Fall 3 0 3 8
The course opens with the approval of the Department at the beginning of each semester

Basic information

Language of instruction: En
Type of course: Departmental Elective
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.

Learning Outputs

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.

Course Content

Complexity of functions, sorting algorithms, recurrences, trees, heaps and priority queues, graph algorithms, dynamic programming, special techniques.

Weekly Detailed Course Contents

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

Sources

Course Notes: "Introduction to Algorithms" Thomas H. Cormen, The MIT Press
References:

Evaluation System

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

ECTS / Workload Table

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

Contribution of Learning Outcomes to Programme Outcomes

No Effect 1 Lowest 2 Low 3 Average 4 High 5 Highest
           
Program Outcomes Level of Contribution
1) Uses basic Software Engineering knowledge and competencies.
2) Applies the software development ability that is necessary for software engineering applications.
3) Uses data structures and applies information about algorithm development.
4) Develops system programs on operating systems.
5) Develops system programs on operating systems.
6) Creates the structure of computer networks and network security.
7) Uses business intelligence, data mining and data analysis tools, applies techniques about them.
8) Develops database applications and WEB based programs.
9) Defines, analyzes, designs and manages information technologies projects.
10) Uses and develops technology-based environments and tools in education.
11) Detects, identifies and solves information technology needs of the business environment.
12) Uses the capabilities of information technologies within the rules of professional responsibility and ethics.