Программа курса

Курс рассчитан на 4 месяца при нагрузке примерно 10 часов в неделю, но вы можете проходить его быстрее — новые модули будут открываться сразу после выполненной практики
10 тем・7 часов
Бесплатно
Введение и пробные задачи
1 модуль — бесплатно, на котором вы изучите понятие алгоритма, освоите методы скользящего среднего и двух указателей
  • Знакомство с курсом
  • Команда курса
  • Временные ряды
  • Метод скользящего среднего
Знакомство с командой курса
Узнаете о создателях курса, наставниках, код-ревьюерах и кураторах, которые будут поддерживать и направлять вас на протяжении всего курса, изучите их опыт и специализации
Что такое алгоритмы и структуры данных
Погрузитесь в основы и понимание алгоритмов и структур данных, изучите их роль и важность в эффективном программировании и решении задач
Формат курса и программа
Получите детальный обзор того, как устроен курс, какие вас ждут модули и задачи
Как устроен Яндекс Контест
Изучите, как использовать систему проверки кода Яндекс Контест, чтобы тестировать и оценивать ваши решения задач
Обработка временных рядов
Познакомитесь с методом скользящего среднего, понятием полуинтервала и разберёте алгоритм решения задачи
Задача TwoSum
Познакомитесь с популярной задачей TwoSum и разберёте 3 метода решения этой задачи
Что будет дальше
Узнаете, что ждёт вас в платной части курса, получите ссылки на полезные материалы, чтобы дальше развивать навыки в области алгоритмов и структур данных
Поймёте, подойдёт ли вам курс, и узнаете, как устроено обучение в Практикуме
2
23 темы・27 часов
Начало курса и введение в алгоритмы
  • Сложность алгоритма
  • O-нотация
  • Введение в алгоритмические собеседования
Начало курса
Познакомитесь с процессами и правилами курса, сдачей финальных задач и мессенджером Пачка
Линейный поиск
Изучите задачу поиска элемента в массиве, научитесь оценивать эффективность, узнаете, что такое вычислительная сложность и линейная зависимость
Бинарный поиск
Познакомитесь с задачей поиска элемента в массиве, сравните линейный и бинарный поиск
Сложность алгоритма, оценка времени исполнения
Изучите О-нотацию и разберёте примеры
Пространственная сложность алгоритма
Узнаете, что это такое, как проводить оценку, разберётесь во взаимосвязи пространственной и временной сложности
Введение в алгоритмические собеседования
Поймёте, как они проходят, какие есть типы заданий, этапы подготовки и критерии успешности
Решите 12 задач, чтобы потренироваться, и выполните 2 финальные задачи, которые отправите на код-ревью
3
14 тем・20 часов
Основные структуры данных
  • Массив
  • Связный список
  • Стек
  • Очередь
  • Операции вставки, поиска и удаления
  • Представление данных в памяти
Статический и динамический массив
Поймёте, в чём сложность операций поиска, вставки и удаления при работе с массивами
Связные списки
Изучите операции поиска, вставки и удаления при работе со связным списком, поймёте, что такое двусвязный список
Стек, очередь, дек
Изучите интерфейс и реализацию структур данных
Решите 12 задач, чтобы потренироваться, и выполните 2 финальные задачи, которые отправите на код-ревью
4
16 тем・20 часов
Рекурсия и сортировки
  • Рекурсия
  • Разделяй и властвуй
  • Сортировка вставками
  • Сортировка по ключу
  • Лексикографическая сортировка
  • Сортировка слиянием
  • Быстрая сортировка
  • Сортировка подсчётом
Рекурсия
Познакомитесь с понятием рекурсии и принципом «разделяй и властвуй», изучите бинарный поиск
Сортировки
Изучите разные виды сортировки: квадратичные сортировки, сортировку слиянием, быструю сортировку, линейную сортировку подсчётом
Решите 16 задач, чтобы потренироваться, и выполните 2 финальные задачи, которые отправите на код-ревью
5
12 тем・20 часов
Хеш-функции
  • Абстракция отображения
  • Хеш-функции
  • Хеш-таблица
  • Коллизии
  • Метод цепочек
  • Метод открытой адресации
Хеш-таблица и хеш-функция
Изучите понятие и свойства хеш-функции, узнаете, что из себя представляет структура данных в хеш-таблице
Коллизии
Познакомитесь с определением и способами разрешения коллизий
Решите 12 задач, чтобы потренироваться, и выполните 2 финальные задачи, которые отправите на код-ревью
6
14 тем・2 недели
Деревья
  • Структура данных «Дерево»
  • Сбалансированные деревья поиска
  • Структура данных «Куча»
  • Пирамидальная сортировка
Структура данных «Дерево»
Познакомитесь с двоичными и сбалансированными деревьями поиска, узнаете, что такое балансировка АВЛ-дерева
Структура данных «Куча»
Изучите алгоритм и узнаете, в чём его сложность, а также познакомитесь с пирамидальной сортировкой
Решите 14 задач, чтобы потренироваться, и выполните 2 финальные задачи, которые отправите на код-ревью
7
13 тем・2 недели
Графы
  • Граф
  • Обход в глубину
  • Обход в ширину
  • Компоненты связности
  • Алгоритмы поиска кратчайшего пути
  • Минимальное остовное дерево
Графы
Познакомитесь с определением графа и способами представления в памяти
Операции на графах
Изучите обход графа в глубину и в ширину, компоненты связности, алгоритмы поиска кратчайшего пути, минимальное остовное дерево
Решите 12 задач, чтобы потренироваться, и выполните 2 финальные задачи, которые отправите на код-ревью
8
14 тем・2 недели
Жадные алгоритмы и динамическое программирование
  • Динамическое программирование
  • Жадные алгоритмы
Динамическое программирование
Познакомитесь с определением, узнаете, что такое одномерные и двумерные задачи, изучите динамическое программирование по подотрезкам и подмножествам
Жадные алгоритмы
Изучите понятие жадного алгоритма и область его применения, рассмотрите примеры и узнаете, как доказывать корректность алгоритма
Решите 15 задач, чтобы потренироваться, и выполните 2 финальные задачи, которые отправите на код-ревью
9
11 тем・2 недели
Алгоритмы на строках
  • Префикс-функция
  • Подстрока
  • Префиксы и суффиксы
  • Поиск шаблона в строке
  • Структура данных «Бор»
Префикс-функция
Изучите подстроки, префиксы и суффиксы
Поиск шаблона в строке
Познакомитесь с наивным алгоритмом и структурой данных «Бор»
Решите 12 задач, чтобы потренироваться, и выполните 2 финальные задачи, которые отправите на код-ревью
С наставником・Каждые 2 недели
Вебинары для разбора сложных тем, сессии Q&A
С наставником・1,5 часа
Пробное алгоритмическое собеседование
Пройдёте один на один с наставником алгоритмическое интервью, максимально приближенное к настоящему, чтобы попрактиковаться решать задачи. По итогам наставник даст обратную связь.
Карьерный трек
Тот, кто хочет сменить работу, обновит резюме и портфолио, чтобы их точно заметили рекрутеры. Напишет сопроводительное письмо и поймёт, как общаться с работодателями. Тот, кто стремится к повышению, научится презентовать результаты своей работы. Узнает, как обсуждать с руководителями зарплату и новые зоны ответственности.

Как проходит курс

YandexGPT помогает проходить курс

Когда в теории что-то непонятно, нейросеть объяснит это другими словами. А в конце каждого модуля подготовит краткий пересказ о самом главном.

Отвечаем на вопросы

Подойдёт ли мне этот курс?
Для тех, кто сомневается, мы спроектировали бесплатную часть, которая поможет получить ответ на этот вопрос. Если вы убедитесь, что выбранный курс вам не подходит, — это тоже положительный результат.
Можно ли выучить алгоритмы за 4 месяца?
Думаем, что да. Если вы будете уделять курсу не менее 10 часов в неделю, практиковаться и общаться с вашим наставником. Тогда за 4 месяца вы освоите навыки для дальнейшего профессионального развития.
Каким требованиям нужно соответствовать?
У вас должна быть возможность заниматься не менее 10 часов в неделю. А ещё нужно уметь решать тестовые задания на одном из популярных языков программирования: C++, Python, Java, Go, JavaScript, C#, Kotlin, Swift.
Кто будет помогать мне проходить курс?
Все наставники — практикующие специалисты: сотрудники Яндекса и других крупных компаний. Программу составляют опытные методисты, а ещё действующие специалисты Яндекса, Школы анализа данных и других лидеров технологической индустрии.
Как и когда я буду проходить курс?
Курс включает 3 составляющие: теория с закреплением в Яндекс Контесте, самостоятельные работы и проекты, онлайн-встречи с наставником. Вы сможете заниматься в своём темпе, но выполнение практики привязано к двухнедельным спринтам.
Что делать, если я не справлюсь с нагрузкой?
В программе предусмотрены перерывы, во время которых можно отдохнуть или повторить сложные темы.

Если вам понадобится сделать паузу или уделить больше времени закреплению материала, напишите своему куратору.
Получу ли я сертификат о завершении курса?
Да, если решите минимум 50% заданий из основного контеста и 2 финальные задачи.
После курса меня возьмут работать в Яндекс?
Мы поддержим при поиске работы, но не гарантируем трудоустройство в Яндекс. Многое зависит от вас самих: наличие подходящего опыта для вакантных позиций, желание сменить работу и упорство в прохождении всех этапов.
Хорошо, а вы можете помочь с поиском работы?
Да. Вы сможете пройти программу трудоустройства, которая состоит из 2 частей:
  • Карьерный трек: участники курса при поддержке наших HR-экспертов составляют резюме или оформляют портфолио, пишут сопроводительные письма.
  • Акселерация: участники курса начинают активный поиск работы, а мы им помогаем — отвечаем на вопросы, проводим тренировочные собеседования, предлагаем вакансии от партнёров.
Важно помнить, что мы не ищем работу за вас, а помогаем её найти.
Если не понравится, я могу вернуть деньги?
Конечно. Если поток ещё не стартовал, вернём всю сумму, Если учёба уже началась, придётся оплатить прошедшие дни со старта вашего первого потока — но мы вернём деньги за остаток курса. Более подробно рассказываем об этом в седьмом пункте оферты..
Получу ли я какой-то документ после курса?
Да, вы получите сертификат о завершении курса.
Как можно оплатить?
Банковской картой: внести всю сумму сразу или платить ежемесячно.

Ежемесячные платежи работают так: вы вносите первую оплату, и в этот момент привязывается карта. С этой карты автоматически будут списываться следующие платежи каждые 30 календарных дней. Например, оплатили 25 марта — следующий платёж пройдёт 24 апреля. Курс будет стоить меньше, если оплатить его сразу целиком.

Через компанию: юридические лица также могут оплатить курс в Практикуме. Чтобы заказать счёт для оплаты, оставьте заявку на странице для корпоративных клиентов.
В какой валюте можно оплатить курс?
Оплатить курс можно в любой валюте, кроме российских рублей.

Чтобы вам было проще сориентироваться, мы указываем примерную стоимость в долларах США, но списание будет в казахстанских тенге, а конвертация — по курсу вашего банка.

Давайте поможем

Мы работаем с 09:00 до 18:00 по минскому времени и связываемся в течение одного дня. Если оставите заявку сейчас, то перезвоним уже в рабочее время.