Алгоритмы: теория и практика. Методы
Цели программ
- Познакомить слушателя с основными алгоритмическими методами;
- Дать основные понятия о реализации алгоритмических методов на языках программирования C++, Java и Python.
Нашли опечатку?
Write Close
Close
Увидели опечатку? Сообщите нам!
Целевая аудитория
Специалист junior
Длительность программы
37 часов
Формат обучения
Дистанционный
Материалы программы
Видеоролики, презентации, тестирования
Преподавательский состав
Александр Куликов
Кандидат физико-математических наук. Научный сотрудник лаборатории математической логики ПОМИ РАН, координатор и преподаватель Computer Science центра и Computer Science клуба при ПОМИ РАН, преподаватель Академического университета. Научные интересы: алгоритмы для NP-трудных задач, схемная сложность.
Алексей Левин
Разработчик Telegram. Ревьюирование C++-кода студентов курса алгоритмов в Computer Science Center. Золотая медаль (2011) и Серебряная медаль (2010) на финале чемпионата мира по программированию ACM ICPC
Павел Маврин
Преподаватель курса «Алгоритмы и структуры данных» в Университете ИТМО и Computer Science Center. Преподаватель школьного кружка олимпиадной информатики ИТМО. Чемпион мира ACM ICPC 2004.
Обзор
1.1 Обзор
Введение: теория и задачи
2.1 Введение
2.2 Числа Фибоначчи
2.3 Наибольший общий делитель
2.4 O-символика
Введение: практика и разбор задач
3.1 Практика на C++: Введение
3.2 Практика на C++: Числа Фибоначчи
3.3 Практика на C++: Наибольший общий делитель
3.4 Практика на Python: Введение
3.5 Практика на Python: Числа Фибоначчи
3.6 Практика на Python: Наибольший общий делитель
3.7 Практика на Java: Введение
3.8 Практика на Java: Числа Фибоначчи
3.9 Практика на Java: Наибольший общий делитель
Жадные алгоритмы: теория и задачи
4.1 Введение
4.2 Коды Хаффмана
4.3 Очереди с приоритетами
Жадные алгоритмы: практика и разбор задач
5.1 Практика на C++: Непрерывный рюкзак
5.2 Практика на C++: Коды Хаффмана
5.3 Практика на Python: Непрерывный рюкзак
5.4 Практика на Python: Коды Хаффмана
5.5 Практика на Java: Непрерывный рюкзак
5.6 Практика на Java: Коды Хаффмана
«Разделяй и властвуй»: теория и задачи
6.1 Двоичный поиск
6.2 Умножение чисел
6.3 Умножение матриц
6.4 Сортировка слиянием
6.5 Быстрая сортировка
6.6 Порядковые статистики
6.7 Сортировка кучей
6.8 Сортировки, основанные не на сравнениях
6.9 Рекуррентные соотношения
«Разделяй и властвуй»: практика и разбор задач
7.1 Практика на C++: Двоичный поиск
7.2 Практика на Python: Двоичный поиск
7.3 Практика на Java: Двоичный поиск
7.4 Практика на Java: Число инверсий
Динамическое программирование: теория и задачи
8.1 Введение
8.2 Наибольшая возрастающая подпоследовательность
8.3 Расстояние редактирования
8.4 Рюкзак
8.5 Перемножение последовательности матриц
8.6 Независимые множества во взвешенных деревьях
8.7 Обзор
Динамическое программирование: практика и разбор задач
9.1 Практика на C++: Расстояние редактирования
9.2 Практика на Python: Расстояние редактирования
9.3 Практика на Java: Расстояние редактирования
Заключительный модуль
10.1 Отзывы и предложения
Часто задаваемые вопросы
Вопрос:
Как зайти на Виртуальную школу?
Ответ:
Для входа в Виртуальную школу (https://sberbank-school.ru/) Вам необходимо знать Ваш логин и пароль. В случае, если Вы не знаете или забыли Ваш логин и (или) пароль, пожалуйста, обратитесь в Службу технической поддержки виртуальной школы по адресу help@sberbank-school.ru
Вопрос:
Могу ли я проходить обучение в Виртуальной школе не с рабочего компьютера?
Ответ:
Да, Вы можете зайти в Виртуальную школу с любого компьютера, имеющего доступ в Интернет.
Вопрос:
Я могу проходить обучение из "Альфы"?
Ответ:
Нет, для работы в Виртуальной школе необходим доступ в Интернет.
Вопрос:
Куда обращаться, если что-то не работает (пароль неверен, не открывается тест, не отображаются материалы и т.п.)?
Ответ:
Обратитесь в Службу технической поддержки Виртуальной школы по адресу help@sberbank-school.ru
Made on
Tilda