Ви переглядаєте архівну версію офіційного сайту НУЛП (2005-2020р.р.). Актуальна версія: https://lpnu.ua
Алгоритми та методи обчислень
Спеціальність: Комп'ютерна інженерія
Код дисципліни: 6.123.00.O.56
Кількість кредитів: 4
Кафедра: Електронні обчислювальні машини
Лектор: асистент Козак Назар Богданович
Семестр: 4 семестр
Форма навчання: денна
Результати навчання:
Теоретична підготовка:
• знання теорії автоматів;
• знання теорії формальних мов;
• знання теорії обчислюваності;
• знання теорії складності обчислень;
• знання основних моделей обчислень;
• знання базових алгоритмів обробки інформації;
• знання теоретичних основ квантових обчислень.
Практичні навички:
• вміння відображати та читати алгоритми подані різними методами;
• вміння виконувати аналіз алгоритмів;
• вміння синтезувати алгоритми використовуючи різні алгоритмічні стратегії;
• вміння застосовувати базові алгоритми обробки інформації засобами узагальненого програмування мов C++, C# та Java;
• вміння застосовувати функційну модель обчислень та виконувати програмування комп’ютерних систем застосовуючи парадигму функційного програмування;
• вміння застосовувати паралельні моделі обчислень та виконувати програмування комп’ютерних систем застосовуючи парадигму реактивного програмування;
• вміння застосовувати рівночасні моделі обчислень та виконувати програмування комп’ютерних систем застосовуючи парадигму подійно-орієнтованого програмування.
• знання теорії автоматів;
• знання теорії формальних мов;
• знання теорії обчислюваності;
• знання теорії складності обчислень;
• знання основних моделей обчислень;
• знання базових алгоритмів обробки інформації;
• знання теоретичних основ квантових обчислень.
Практичні навички:
• вміння відображати та читати алгоритми подані різними методами;
• вміння виконувати аналіз алгоритмів;
• вміння синтезувати алгоритми використовуючи різні алгоритмічні стратегії;
• вміння застосовувати базові алгоритми обробки інформації засобами узагальненого програмування мов C++, C# та Java;
• вміння застосовувати функційну модель обчислень та виконувати програмування комп’ютерних систем застосовуючи парадигму функційного програмування;
• вміння застосовувати паралельні моделі обчислень та виконувати програмування комп’ютерних систем застосовуючи парадигму реактивного програмування;
• вміння застосовувати рівночасні моделі обчислень та виконувати програмування комп’ютерних систем застосовуючи парадигму подійно-орієнтованого програмування.
Необхідні обов'язкові попередні та супутні навчальні дисципліни:
Пререквізити:
Дискретна математика
Програмування, частина 1 (Основи алгоритмізації та програмування)
Програмування, частина 2 (Об’єктно орієнтоване програмування)
Програмування, частина 3 (Структури даних та алгоритми)
Дискретна математика
Програмування, частина 1 (Основи алгоритмізації та програмування)
Програмування, частина 2 (Об’єктно орієнтоване програмування)
Програмування, частина 3 (Структури даних та алгоритми)
Короткий зміст навчальної програми:
Вступ до теорії алгоритмів.
(4 лекційні години)
Частина 1. Тема 1. Методи відображення та синтез алгоритмів.
(4 лекційні години)
Частина 1. Тема 2. Основи аналізу алгоритмів.
(2 лекційні години)
Частина 1. Тема 3. Базові алгоритми обробки інформації.
(6 лекційних годин)
Частина 1. Тема 4. Бібліотеки основних алгоритмів обробки інформації для популярних мов програмування.
(6 лекційних годин)
Частина 2. Тема 5. Моделі обчислень.
(8 лекційних годин)
Частина 3. Тема 6. Квантові обчислення.
(2 лекційні години)
Рекомендована література:
1) Michael Sipser (2013). Introduction to the Theory of Computation. 3rd. Cengage Learning. ISBN 978-1-133-18779-0
2) Savage, John E. (1998). Models Of Computation: Exploring the Power of Computing. ISBN 978-0-201-89539-1
3) Fernandez, Maribel (2009). Models of Computation: An Introduction to Computability Theory. Undergraduate Topics in Computer Science. Springer. ISBN 978-1-84882-433-1.
4) Anany Levitin (2012). Introduction to the design & analysis of algorithms. 3rd. ISBN-13: 978-0-13-231681-1.
5) https://ocw.mit.edu/courses/mathematics/18-404j-theory-of-computation-fall-2006/
6) https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-045j-automata-computability-and-complexity-spring-2011/
2) Savage, John E. (1998). Models Of Computation: Exploring the Power of Computing. ISBN 978-0-201-89539-1
3) Fernandez, Maribel (2009). Models of Computation: An Introduction to Computability Theory. Undergraduate Topics in Computer Science. Springer. ISBN 978-1-84882-433-1.
4) Anany Levitin (2012). Introduction to the design & analysis of algorithms. 3rd. ISBN-13: 978-0-13-231681-1.
5) https://ocw.mit.edu/courses/mathematics/18-404j-theory-of-computation-fall-2006/
6) https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-045j-automata-computability-and-complexity-spring-2011/
Методи і критерії оцінювання:
Письмові контрольні на лекції (без виставляння балів)
Виконання і захист лабораторних та практичних робіт: 30
Екзаменаційний контроль: 70 (письмова компонента: 60, усна компонента: 10)
Виконання і захист лабораторних та практичних робіт: 30
Екзаменаційний контроль: 70 (письмова компонента: 60, усна компонента: 10)