Чему вы научитесь
- Применять существующие алгоритмы на практике, а также разрабатывать свои модификации
- Понимать глубокие детали алгоритмов
- Анализировать время работы и объем потребляемой памяти алгоритмов
- Эффективно отлаживать код с помощью стресс-тестирования
- Реализовывать алгоритмы на Python и C++
- Предсказывать ожидаемую сложность алгоритма по ограничениям задачи
- Работать с многомерными массивами
- Применять и реализовывать техники префиксных сумм к многомерным массивам
- Применять и реализовывать технику дискретной производной
- Работать с модифицированными стеком и очередью
- Применять и реализовывать метод многих указателей
- Применять и реализовывать рекурсию на практике
- Применять и реализовывать параллельный бинарный поиск
- Применять и реализовывать технику "разделяй и властвуй"
- Применять и реализовывать базовые строковые алгоритмы
- Применять и реализовывать хеш-таблицы
- Применять и реализовывать разреженные таблицы
- Решите финальный контест для закрепления полученных знаний по всем темам курса
- Изучите базовые математические алгоритмы, широко используемые в олимпиадах и криптографии
О курсе
Для кого этот курс
Начальные требования
Базовое знание Python ИЛИ C++ (достаточно владеть лишь одним языком на базовом уровне).
Базовое знание школьной математики.
Преподаватели курса
Как проходит обучение
Курс разделен на модули. В каждом модуле разобрана теория. Теория разделена на несколько текстовых степов с иллюстрациями. Теория подкрепляется вспомогательными тестами и небольшими задачами для закрепления материала. После блоков с теорией располагаются блоки с задачами на программирование. Каждая задача сопровождается подсказками, разбором, а также авторским кодом. В случае возникновения трудностей ученики cмогут получить ответы на вопросы в комментариях или в закрытом сообществе.
Что вы получите
- Навыки реализации и анализа базовых алгоритмов.
- Полный конспект, прочитав который в течение 10 минут, можно вспомнить все темы и идеи курса.
- Авторская библиотека алгоритмов на Python и C++, протестированная на множестве олимпиадных задач, которую можно применять при написании олимпиад или в собственных проектах.
- Поддержку преподавателя в течение 24-х часов.
- Доступ к материалам курса без ограничения по времени.