Курс знакомит слушателей с базовыми структурами данных и алгоритмами, знание которых необходимо для эффективного решения разнообразных задач программирования. Авторы курса занимаются поиском и подготовкой одаренных в области информатики и программирования студентов и школьников. Под их руководством студенческие команды многократно становились чемпионами России по программированию, чемпионами мира и Европы.
Алгоритмы программирования и структуры данных
Русский
язык курса
10 недель
длительность курса
около 14 часов в неделю
понадобится для освоения
4 зачётных единицы
для зачета в своем вузе
Описание
Преподаватели

Университет ИТМО

Бойцев Антон Александрович
Должность: доцент факультета систем управления и робототехники, доцент высшей школы цифровой культуры Университета ИТМО

Волчек Дмитрий Геннадьевич
Должность: доцент высшей школы цифровой культуры Университета ИТМО

Романов Алексей Андреевич
Должность: доцент высшей школы цифровой культуры Университета ИТМО

Егорова Ольга Борисовна
Должность: преподаватель высшей школы цифровой культуры Университета ИТМО
Отзывы
"Данный курс помог мне понять, что из себя представляет искусственный интеллект! Преподаватель очень чётко и понятно разъяснил все темы. Данный курс структурирован, с полезными практическими примерами и очень интересен! Спасибо большое!"

Сафронова Настя
"Понятно изложены основные предпосылки и вехи развития искусственных интеллектуальных систем. Доступно изложены основные подходы к созданию ИИ систем и наиболее распространенные алгоритмы работы с информацией. Курс мотивирует к более глубокому погружению в проблематику ИИ."

Егор Долин
"Отличный курс! Все доходчиво и понятно, тяжелова-то конечно для моего понимания так как я все таки гуманитарий, но разобраться можно. Самый лучший курс на мой взгляд для начинающего."

Дрокин Михаил
Детали
О курсе
Курс посвящен изучению базовых алгоритмов и структур данных, знание которых необходимо для эффективного решения разнообразных задач программирования. Рассматриваются различные алгоритмы сортировки, линейные структуры данных, такие как очереди и списки, алгоритмы и структуры данных для эффективного поиска и хранения информации - сбалансированные деревья поиска и хеши, а также алгоритмы поиска подстрок.
Цель курса - получение базовых знаний об основных алгоритмах и структурах данных, используемых для хранения и поиска информации.В курсе используется система автоматического тестирования программ, обеспечивающая объективную оценку корректности выполнения заданий по программированию.
После прохождения курса обучающиеся приобретут навыки анализа и реализации базовых алгоритмов программирования и структур данных, а также проектирования и разработки средств реализации прикладных информационных технологий.
Прохождение курса «Алгоритмы программирования и структуры данных» позволит существенно повысить продуктивность и конкурентоспособность слушателей при разработке программного обеспечения.
Цель курса - получение базовых знаний об основных алгоритмах и структурах данных, используемых для хранения и поиска информации.В курсе используется система автоматического тестирования программ, обеспечивающая объективную оценку корректности выполнения заданий по программированию.
После прохождения курса обучающиеся приобретут навыки анализа и реализации базовых алгоритмов программирования и структур данных, а также проектирования и разработки средств реализации прикладных информационных технологий.
Прохождение курса «Алгоритмы программирования и структуры данных» позволит существенно повысить продуктивность и конкурентоспособность слушателей при разработке программного обеспечения.
Требования
Для успешного освоения курса необходимы знание основ дискретной математики, умение писать программы среднего размера на объектно-ориентированном языке программирования.
Для прохождения курса требуется любой общедоступный компилятор одного из следующих языков программирования:
Java: версия 8 (ссылка для скачивания на сайте Oracle)
C, C++: MinGW версии 5.1 (для Windows, для Linux можно использовать GCC аналогичной версии), а также Microsoft Visual Studio C++ 2013 (скачать Visual Studio Express можно здесь).
C#: Microsoft Visual Studio C# 2013 (скачать Visual Studio Express можно здесь).
Python: версия 3.5 (ссылка для скачивания на сайте python.org)
Scala: версия 2.11 (ссылка для скачивания на сайте scala-lang.org)
Kotlin: версия 1.0 (ссылки на инструкции по установке компилятора, плагинов в IntelliJ IDEA и в Eclipse).
Для прохождения курса требуется любой общедоступный компилятор одного из следующих языков программирования:
Java: версия 8 (ссылка для скачивания на сайте Oracle)
C, C++: MinGW версии 5.1 (для Windows, для Linux можно использовать GCC аналогичной версии), а также Microsoft Visual Studio C++ 2013 (скачать Visual Studio Express можно здесь).
C#: Microsoft Visual Studio C# 2013 (скачать Visual Studio Express можно здесь).
Python: версия 3.5 (ссылка для скачивания на сайте python.org)
Scala: версия 2.11 (ссылка для скачивания на сайте scala-lang.org)
Kotlin: версия 1.0 (ссылки на инструкции по установке компилятора, плагинов в IntelliJ IDEA и в Eclipse).
Результаты обучения
Умение анализировать и реализовывать базовые алгоритмы программирования и структуры данных
Навыки проектирования и разработки средств реализации прикладных информационных технологий
Навыки разработки алгоритмов для проведения экспериментальных исследований в области информатики
Навыки проектирования и разработки средств реализации прикладных информационных технологий
Навыки разработки алгоритмов для проведения экспериментальных исследований в области информатики
Формируемые компетенции
09.03.02 Информационные системы и технологии
Способность к проектированию базовых и прикладных информационных технологий (ПК-11)
Способность разрабатывать средства реализации информационных технологий (алгоритмические) (ПК-12)
Готовность участвовать в постановке и проведении экспериментальных исследований (ПК-23)
Способность к проектированию базовых и прикладных информационных технологий (ПК-11)
Способность разрабатывать средства реализации информационных технологий (алгоритмические) (ПК-12)
Готовность участвовать в постановке и проведении экспериментальных исследований (ПК-23)