Study program: 122 Computer science
Degree: Bachelor
Type of module: lectures, practical work
Lecturer: Assoc. Prof., PhD Vadim Shergin / доц., к.т.н. Вадім Шергін
Language: English
Credit Points: 4 ECTS
Description:
Basic (professional) training disciplines by Programme Subject Area (required) contains content modules: 1. Fundamentals of algorithm analysis: Determination of growth rate. Classification of growth rates. Complexity of algorithms. Estimating the time complexity of algorithms. 2. Search & sorting algorithms: Sequential search. Binary search. Simple sorting algorithms, digital sorting. Merge sort, quicksort, heapsort 3. Fast algorithms: Examples of fast algorithms. Fast Fourier transform. Practical application of fast algorithms. 4. Methods of describing algorithms: Intuitive general properties of algorithm. Algorithm definition through Church's thesis. Recursive functions. Turing's thesis. Turing machines. Register machines. Description of the algorithm in natural language. Pseudocode. Graphic method presentation of the algorithm. Solvability and unsolvability of algorithmic problems.
Обов’язкова дисципліна циклу професійної та практичної підготовки за освітньою програмою «Штучний інтелект», містить змістові модулі: 1. Основи аналізу алгоритмів: Визначення швидкості росту. Класифікація швидкостей росту. Складність алгоритмів. Види складності. Класифікація алгоритмів за складністю. Оцінювання часової складності алгоритмів. 2. Алгоритми пошуку, вибірки, сортування: Послідовний пошук. Бінарний пошук. Цифрове сортування. Сортування злиттям, алгоритм quicksort. Двійкова купа (піраміда). Застосування пірамід. Алгоритм heapsort. 3. Швидкі алгоритми: Приклади швидких алгоритмів. Швидке перетворення Фур’є. Практичне застосування швидких алгоритмів. 4. Способи опису алгоритмів: Інтуітивне уявлення щодо алгоритму. Визначення алгоритму через тезу Черча. Рекурсивні функції. Теза Тьюрінга. Машини Тьюрінга. Регістрові машини. Опис алгоритму. Псевдокод. Графічні засоби представлення алгоритму.