Алгоритмы
для разработчиков

Стать крутым инженером будет проще разработчику, который знаком со структурами данных и алгоритмами. Крупнейшие IT-компании мира и многие стартапы проверяют на собеседованиях алгоритмическую подготовку соискателей. Это лучший способ убедиться, что человек умеет быстро думать и писать работающий код. В этом курсе вы напишете много кода, научитесь оценивать эффективность решений и набьёте руку на практических заданиях.

Учим в собственной технологической среде

Погружение в IT-профессию подразумевает постоянный контакт с технологиями, море практики и общение с однокурсниками и наставником. Для этого мы создали собственную среду обучения.

01

Онлайн-тренажёр и Яндекс.Контест

С первого дня вы учитесь на практике. Теория и поддержка доступны в нашем онлайн-тренажере, а практика — в Яндекс.Контесте — специальной платформе, созданной для проверки алгоритмических задач. Решайте задачи на своём любимом популярном языке программирования: C/C++, Python, Java, Go или JavaScript.

02

Код-ревью

Работающий код — это только часть успеха. Для работы в команде нужно уметь писать читаемый и красивый код. Наши код-ревьюеры помогут вам отточить свои навыки в этом направлении.

03

Поддержка

Команда наставников проверяет и комментирует ваши работы, помогает разобраться в сложностях и делится профессиональным опытом. Поддержка в чате доступна 24/7.

Программисты учат программированию

Наставники — опытные разработчики из Яндекса и других IT-компаний.

Сколько стоит обучение

Вводный курс —
бесплатно

Мы расскажем про метод двух указателей на примерах, которые вы можете встретить в реальной жизни и на собеседованиях. Вместе с теорией вам будут доступны задачи для закрепления изученного материала на практике. По ним вы сможете проверить, будет ли курс вам полезен.
  • Доступ к одному набору задач
  • Знакомство с системой Яндекс.Контест
  • Отзывчивая служба поддержки

Платное продолжение

13 000 ₽ помесячный платёж.
Итоговая сумма составит 52 000 ₽

или

45 000 ₽ при оплате сразу за 
4 месяца обучения.

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

Программа вашего обучения

1

Введение в алгоритмы

20 часов

Понятие сложности алгоритма. O-нотация. Оценка времени исполнения программы.

2

Основные структуры данных

20 часов

Массив, связный список, стек, очередь. Сложность операций вставки, поиска и удаления. Представление данных в памяти. Пространственная сложность алгоритма.

Открыть всю программу

Рекурсия

4

Сортировки

15 часов

Квадратичные сортировки. Сортировка слиянием. Быстрая сортировка. Линейная сортировка подсчётом.

5

Хеш-функции и хеш-таблицы

20 часов

Абстракция отображения. Понятие и свойства хеш-функции, примеры. Структура данных хеш-таблица. Коллизии и способы их разрешения.

6

Деревья

20 часов

Структура данных дерево. Сбалансированные деревья поиска. Структура данных куча. Пирамидальная сортировка.

7

Графы

20 часов

Определение графа, способы представления в памяти. Обход графа в глубину и в ширину. Компоненты связности. Алгоритмы поиска кратчайшего пути. Минимальное остовное дерево.

8

Динамическое программирование

15 часов

Определение, одномерные и двумерные задачи. Динамическое программирование по подотрезкам. Динамическое программирование по подмножествам.

9

Жадные алгоритмы

5 часов

Понятие жадного алгоритма, область применения. Примеры, доказательство корректности алгоритма.

10
Скрыть программу

Алгоритмы на строках

20 часов

Префикс-функция. Поиск подстроки, алгоритм Кнута-Морриса-Пратта. Структура данных бор.

Что говорят о нас
Студенты
Эксперты

Начните учиться бесплатно

Решите пробный набор задач и оцените свою алгоритмическую подготовку.

Часто задаваемые вопросы

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