Курс «Алгоритми та моделі обчислень» розроблений на основі класичних літературних джерел [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/
Допоміжна
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