Lesson plan / ALGORITHM ANALYSIS

Lesson Information

Course Credit 3.0
Course ECTS Credit 5.0
Teaching Language of Instruction Türkçe
Level of Course Bachelor's Degree, TYYÇ: Level 6, EQF-LLL: Level 6, QF-EHEA: First Cycle
Type of Course Compulsory
Mode of Delivery Face-to-face
Does the course require compulsory or optional work experience? Z
Course Coordinator
Instructor (s)
Course Assistant

Purpose and Content

The aim of the course Students will be able to analyse the structures of algorithms, their design and application problems, complexity of algorithms and computation problems, types of algorithms and runtime estimation methods. All these are necessary to design and apply workable programs to solve the practical problems.
Course Content The course will introduce the concept of algorithm, Simplist sorting algorithms, Designing approachs: recursive and divide-and-conquer strategies; asymptotic notations, complexity analysis, running times defining, algorithm design techniques: greedy methods, min-cost spanning trees,backtracking algorithms, branch-and-bound methodolog

Weekly Course Subjects

1Introduction. Insertion sort algorithm.
2Algorithm analysing methods.Examples
3Designing algorithms: recursive and divide-and-conquer methods.
4Asymptotic notations.
5Practical complexity analysis.
6Running times defining.
7Midterm exam.
8Linear lists: a chain iterator class in C++.
9Arrays as classes.
10Trees: tournament and binary-search trees.
11AVL and B-trees.
12Algorithm-design techniques: the Greedy method, Divide-and-conquer method.
13Backtracking algorithms. Branch-and-Bound methodology
14Final exam.

Resources

Cormen T.H. etc. "Introduction to Algorithms", The MIT Press, 2001.