Алгоритми і структури даних
(АіСД 3)
Фундаментальні знання Computer Science дозволяють швидше вивчати і розуміти нові технології. Цей курс містить практичний вступ до основних ідей, принципів дизайну та аналізу алгоритмів, що являють собою ядро інструментарію сучасних алгоритмів. Акцент буде зроблений на вивченні теоретичних принципів побудови алгоритмів, а також розумінні як і коли застосовувати ті чи інші структури даних. В кожній темі присутнє викладення ідеї алгоритму, обговорення мотивації, теоретичної бази та практичного застосування.
Курс «Алгоритми і структури даних» – це вступ до фундаментальних технік дизайну та аналізу алгоритмів, включаючи асимпотичний аналіз, алгоритми "розділяй і володарюй, жадібні алгоритми, динамічне програмування, алгоритми на графах, стрічкові та рандомізовані алгоритми, алгоритми пошуку та сортування. Розглядаються такі структури даних як піраміди, черги з пріоритетами, деки, списки з пропусками, декартові дерева, хеш-таблиці, фільтри Блума та збалансовані дерева пошуку.
Будуть розглянуті тонкощі реалізації алгоритмів мовою С++ з використанням таких парадигм як узагальнене та обєктно-орієнтоване програмування. Кожна тема буде супроводжуватися міні-проектом, в якому студенти реалізовуватимуть практичну задачу. На прикладі відомих алгоритмів, цей курс навчить студентів прийомам мислення, необхідним для розвязування складних задач.
Лектор досягнув рівня 95% на курсі Стенфордського університету Алгоритми: дизайн та аналіз
- Teacher: Краснокутська Інесса Володимирівна