Анотація курсу


Курс «Алгоритми та моделі обчислень» розроблений на основі класичних літературних джерел [1, 2, 3, 4, 5, 6, 7, 8] зважаючи на програми аналогічних курсів Массачусетського технологічного інституту [9, 10]. Основу дисципліни становлять наступні розділи.

•   Теорія алгоритмів (в зарубіжній літературі – теорія обчислень, англ. Theory of Computation) [3]. Тут розглядаються:

•     теорія автоматів (англ. Automata theory);

•     теорія формальних мов (англ. Formal language theory);

•     теорія обчислюваності (англ. Computability theory);

•     теорія складності обчислень (англ. Computational complexity theory).

•   Моделі обчислень (англ. Models of Computation) [4, 5].

•   Методи розробки алгоритмів (алгоритмічні стратегії) (англ. Algorithm Design Paradigm, Algorithmic Paradigm, Algorithmic Technique, Algorithmic Strategy) [6].

Для базових алгоритмів обробки інформації та бібліотек популярних мов програмування, які їх реалізовують, розглядаються зразки коду програм, в яких велику увагу приділено використанню:

•   узагальненого програмування;

•   метапрограмування;

•   регулярних виразів та нотації Бекуса-Наура.

Також окрім імперативного (процедурного та об’єктно-орієнтованого) програмування, в наведених зразках коду показано застосування:

•   парадигми функційного програмування;

•   парадигми реактивного програмування;

•   парадигми подійно-орієнтованого програмування.

 

Список рекомендованої літератури


Базова

1. Cormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald L.; Stein, Clifford. Introduction to Algorithms. — 3rd. — MIT Press, 2009. — ISBN 0-262-03384-4.

2. Donald E. Knuth.The Art of Computer Programming, Volumes 1-4A Boxed Set. Third Edition (Reading, Massachusetts: Addison-Wesley, 2011), 3168pp. ISBN 978-0-321-75104-1, 0-321-75104-3.

3. Michael Sipser (2013). Introduction to the Theory of Computation. 3rd. Cengage Learning. ISBN 978-1-133-18779-0

4. Savage, John E. (1998). Models Of Computation: Exploring the Power of Computing. ISBN 978-0-201-89539-1

5. Fernandez, Maribel (2009). Models of Computation: An Introduction to Computability Theory. Undergraduate Topics in Computer Science. Springer. ISBN 978-1-84882-433-1.

6. Anany Levitin (2012). Introduction to the design & analysis of algorithms. 3rd. ISBN-13: 978-0-13-231681-1

7. Aho, A. V., Hopcroft, J. E., & Ullman, J. D. (1983). Data Structures and Algorithms. Addison-Wesley. ISBN 978-0-201-00023-8.

8. Aho, A. V., Hopcroft, J. E., & Ullman, J. D. (1974). The Design and Analysis of Computer Algorithms. Addison-Wesley. ISBN 978-0-201-00029-0.

9. https://ocw.mit.edu/courses/18-404j-theory-of-computation-fall-2020/

10. https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-045j-automata-computability-and-complexity-spring-2011/

 

Допоміжна

11. Темнікова, О. Л. Математична логіка та теорія алгоритмів: Конспект лекцій [Електронний ресурс] : навч. посіб. для студ. спеціальності 113 «Прикладна математика», освітньої програми «Наука про дані та математичне моделювання» / О. Л. Темнікова ; КПІ ім. Ігоря Сікорського. – Електронні текстові дані (1 файл: 3,69 Мбайт). – Київ : КПІ ім. Ігоря Сікорського, 2021. – 177 с. – Назва з екрана. – Режим доступу до ресурсу: https://ela.kpi.ua/bitstreams/90cfd1e3-1a98-4370-95f3-bd1d677d0e7c/download

12. Темнікова, О. Л. Теорія алгоритмів. Алгоритмічні схеми. Практикум [Електронний ресурс] : навчальний посібник для студентів, які навчаються за спеціальністю 113 «Прикладна математика», освітньою програмою «Наука про дані та математичне моделювання» / О. Л. Темнікова ; КПІ ім. Ігоря Сікорського. – Електронні текстові дані (1 файл: 1,58 Мбайт). – Київ : КПІ ім. Ігоря Сікорського, 2022. – 43 с. – Назва з екрана. – Режим доступу до ресурсу: https://ela.kpi.ua/bitstreams/92c7b0e2-58d3-4233-9112-66a4d2f5c667/download

13. Прийма С. М. Теорія алгоритмів [Електронний ресурс] : навчальний посібник / С. М. Прийма. – Мелітополь: ФОП Однорог Т.В., 2018. – 116 с. - ISBN 978-617-7566-66-2. – Режим доступу до ресурсу: http://elar.tsatu.edu.ua/bitstream/123456789/9754/1/ta_priyma_20181.pdf

14. Стусь, О. В. Математична логіка та теорія алгоритмів: Лекції [Електронний ресурс] : навчальний посібник для студентів спеціальності 124 «Системний аналіз» / О. В. Стусь ; КПІ ім. Ігоря Сікорського. – Електронні текстові дані (1 файл: 0,8 Мбайт). – Київ : КПІ ім. Ігоря Сікорського, 2017. – 150 с. – Назва з екрана. – Режим доступу до ресурсу: https://ela.kpi.ua/bitstreams/045945ba-0296-4da9-90b2-638d4ed02a68/download

15. Трохименко, В. С. Конспект лекцій з математичної логіки та теорії алгоритмів [Електронний ресурс] : конспект лекцій / В. С. Трохименко — Вінниця: 2007. — 86с. – Режим доступу до ресурсу: https://amnm.vspu.edu.ua/wp-content/uploads/2016/02/Trohimenko-Matematichna-logika.pdf

16. Горлова Т. М. Теорія алгоритмів: Конспект лекцій [Текст] : навч. посіб. для студентів напряму підготовки 6.050101 «Комп'ютерні науки» денної та заочної форм навчання / Т. М. Горлова, К. Є. Бобрівник, Н. В. Ліманська. — Київ : НУХТ, 2015. — 95 с.

17. Бондаренко М.Ф. Комп’ютерна дискретна математика: Підручник / М.Ф. Бондаренко, Н.В. Білоус, А.Г. Руткас. – Харків, «Компанія СМІТ» 2004. – 480 с.

18. Коротєєва Т. О. Алгоритми та структури даних: навч. посібник / Т. О. Коротєєва. – Львів: Львівської політехніки, 2014. – 280 с.

19. Креневич А. П. Алгоритми і структури даних [Електронний ресурс] : підручник / А. П. Креневич ; КНУ імені Тараса Шевченка. – Режим доступу до ресурсу: https://www.mechmat.univ.kiev.ua/wp-content/uploads/2021/09/pidruchnyk-alhorytmy-i-struktury-danykh.pdf

20. Спекторський І. Я. Формальні мови та автомати [Текст] : підруч. для здобувачів ступеня бакалавра за спец. "Системний аналіз" / І. Я. Спекторський, В. М. Статкевич ; [відп. ред. Г. Б. Подколзін] ; Нац. техн. ун-т України "Київ. політехн. ін-т ім. Ігоря Сікорського", Ін-т приклад. систем. аналізу, Каф. мат. методів систем. аналізу. - Київ : КПІ ім. Ігоря Сікорського, 2020. - 167 с. : рис., табл. - Бібліогр.: с. 162-164. - 55 прим. - ISBN 978-966-622-967-3

21. Гавриленко С. Ю. Формальні мови, граматики та автомати [Електронний ресурс] : навч. посібник / С. Ю. Гавриленко ; Нац. техн. ун-т "Харків. політехн. ін-т". – Електрон. текст. дані. – Харків, 2021. – 133 с. – Режим доступу до ресурсу: https://repository.kpi.kharkov.ua/server/api/core/bitstreams/5847efdd-6ff5-4f7f-9de8-6f6555ad4cc0/content

22. Стативка, Ю. І. Формальні мови. Основнi концепти i представлення [Електронний ресурс] : навч. посіб. для студ. спецiальностi 121 Iнженерiя програмного забезпечення / Ю. І. Стативка ; КПІ ім. Ігоря Сікорського. – Електронні текстові дані (1 файл: 956,79 Кбайт). – Київ : КПІ ім. Ігоря Сікорського, 2023. – 87 с. – Назва з екрана. – Режим доступу до ресурсу: https://ela.kpi.ua/server/api/core/bitstreams/0278c558-aeac-4b4c-96c5-6d8eeb532c7f/content

23. Новотарський, М. А. Алгоритми та методи обчислень [Електронний ресурс] : навч. посіб. для студентів спеціальностей 121 «Інженерія програмного забезпечення», спеціалізації «Програмне забезпечення високопродуктивних комп’ютерних систем та мереж» та 123 «Комп’ютерна інженерія», спеціалізації «Комп’ютерні системи та мережі» / М. А. Новотарський ; КПІ ім. Ігоря Сікорського. – Електронні текстові дані (1 файл: 4,64 Мбайт). – Київ : КПІ ім. Ігоря Сікорського, 2019. – 407 с. – Назва з екрана. – Режим доступу до ресурсу: https://ela.kpi.ua/bitstreams/7421218e-d7dd-4e75-aa3e-bd7979db4e6d/download