Акции школ
Войти

Курс «Алгоритмы и структуры данных»

Составитель: Денис Сметнёв · Обновлено: 22.08.2026

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

Подробнее


Компания: OTUS (Отус)

Язык: ru

Уровень: Средний Длительность: 5 месяцев Формат: Онлайн Старт: в любое время Документ: Диплом школы
🎓 Диплом школы 📁 1 проект в портфолио
Почему мы рекомендуем: диплом школы — оценка по нашей методике (рейтинг, цена, трудоустройство, диплом)

Актуальная программа курса (10 модулей, по данным школы)

  1. Простые алгоритмы и базовые структуры данных
  2. Алгоритмы сортировки
  3. Деревья поиска
  4. Хеш-таблицы
  5. Теория графов
  6. Алгоритмы на строках
  7. Динамическое программирование
  8. Олимпиадное программирование
  9. Вероятностные алгоритмы
  10. Проектная работа

Кем вы сможете работать

Junior-программист · Фронтенд-разработчик · Архитектор программного обеспечения

Сколько зарабатывают в профессии (медиана hh.ru, по 160 вакансиям)

Junior
86 000 ₽
Middle
182 500 ₽
Senior
250 000 ₽

Окупаемость: стоимость курса ≈ 1 мес зарплаты junior-специалиста.

Сравнение с похожими курсами других школ

КурсШколаЦенаСрокРейтингДиплом
Алгоритмы и структуры данных (этот) OTUS (Отус) 5 месяцев Диплом школы
Modx LoftSchool (Лофт скул) беспл. 5.0 Обзор
1-2-3 — Сайт! Восхождение на Tilda Тренинг-центр 1day1step.ru 8 400 ₽ 2 месяца 5.0 Обзор
Компьютерные сети GeekBrains (ГикБреинс) 15 000 ₽ 4 недели 5.0 Сертификат Перейти

Стоит ли идти на этот курс

Плюсы

  • Программа охватывает путь от простых сортировок до олимпиадного и вероятностного программирования: редкий диапазон для одного курса среднего уровня
  • Структуры данных разобраны по видам отдельными модулями: двоичные деревья поиска, сбалансированные, B и B+ деревья, красно-чёрные — не одна обзорная тема «деревья» на весь блок
  • Курс завершается проектной работой и дипломом: есть артефакт, который можно показать на собеседовании
  • Алгоритмы на строках и теория графов в программе полноценными модулями, а не отдельными лекциями — темы, без которых рабочий код на реальных объёмах данных ведёт себя непредсказуемо

Минусы и кому не стоит

  • Нагрузка в неделю публично не указана: 150 дней и десять модулей дают ориентир по срокам, но не по часам. Сложно заранее понять, впишется ли курс в расписание рядом с работой
  • Данных о доходимости до финала нет. Тема плотная, программа длинная — риск застрять на середине реальный, и школа его не обсуждает открыто
  • Трудоустройство сводится к размещению резюме в базе партнёров, которые могут пригласить на интервью. Активного сопровождения нет

Когда этот курс вам не нужен

Если вы уже решаете задачи на LeetCode уровня medium-hard и понимаете, чем B-дерево отличается от красно-чёрного по структуре и сценариям применения — большая часть программы будет повторением. Не стоит идти сюда и тогда, когда цель: быстро закрыть один пробел перед конкретным собеседованием через три недели. Пять месяцев и десять модулей — про системное понимание, а не точечную подготовку. При жёстком бюджете алгоритмы реально освоить через открытые курсы плюс регулярную практику на Codeforces или аналогах: платный курс оправдан, когда нужна структура, живая обратная связь и дисциплина извне.

Как выбрать курс по этому направлению

В курсах по алгоритмам разница между программами бывает принципиальной. Первое, на что смотрю: глубина разбора тем. «Введение в сортировки» и «быстрая + внешняя + линейная сортировка» — разные курсы по реальной пользе, хотя в описаниях звучат похоже. Второе: есть ли проектная работа, где всё это применяешь, а не просто сдаёшь тест по каждому модулю отдельно. И третий вопрос, который стоит задать на берегу: какая нагрузка в неделю. Школы редко дают эту цифру публично, но на вводной встрече или в чате выпускников её можно спросить напрямую, иначе пять месяцев незаметно превращаются в бесконечный долг.

Частые вопросы

Можно ли пройти курс с нуля, без опыта в алгоритмах?

Уровень средний: предполагается, что вы уже пишете код и понимаете базовые конструкции. Если только начинаете программировать, сначала освойте язык и синтаксис, потом алгоритмы — иначе первые модули по рекурсии и битовой арифметике будут не в строку.

Сколько по времени занимает курс?

150 дней, около пяти месяцев. Десять модулей за этот срок дают примерно по две недели на каждый, включая финальную проектную работу. Нагрузку в часах в неделю школа публично не указывает — спросите на вводной встрече или в чате выпускников.

Какой документ выдают в итоге?

Диплом OTUS: корпоративный документ школы, не государственное свидетельство о переквалификации. На практике работодатели смотрят на проектную работу и технические навыки сильнее, чем на статус бумаги.

Помогут ли с работой после курса?

Школа разместит ваше резюме в базе партнёров — они могут позвать на интервью. Дальше всё на вас: куратора, который ведёт по вакансиям, нет.

На какую роль ориентирован курс?

На разработчиков, которые уже пишут код: джуниоров перед техническими собеседованиями, фронтенд-разработчиков с пробелами в алгоритмической базе, тех, кто движется в сторону архитектуры ПО.

Сколько стоит курс?

Актуальная цена — .

Длительность курса

Длительность курса

150 дней

Формат обучения

Формат обучения

2 вебинара в неделю по 2 академических часа

Обратная связь

Обратная связь

общение с преподавателем в канале Slack раз в месяц очные митапы преподавателей и студентов

Теория и практика

Теория и практика

10 модулей 51 час теории и 40-80 часов практики

Чему научитесь

  • Писать рациональный и хорошо структурированный код
  • Владеть техникой вычисления сложности алгоритмов
  • Применять в работе продвинутые структуры данных: хэш-таблицы, графы, деревья поиска
  • Решать алгебраические задачи и задачи динамического программирования.
  • Разрабатывать кастомную хэш-таблицу
  • Реализовывать менеджер памяти с Garbage Collector и B-tree индекс для СУБД
Перейти на страницу курса Запишись на курс
прямо сейчас!

О курсе

О курсе

Junior разработчикам

Middle разработчикам

Рассрочка

12500 р. в месяц

Введение в алгоритмы и структуры данных

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

Алгоритмы сортировки

В этом модуле мы рассмотрим самые разные алгоритмы сортировки данных, начиная самыми медленными и заканчивая эффективными алгоритмами, которые работают за линейное время, также мы напишем алгоритм внешней сортировки, когда все данные не могут быть загружены в память программы. На последнем занятии мы рассмотрим алгоритм нахождения порядковых статистик за линейное время.

Деревья

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

Хеш-таблицы

Графы

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

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

Вероятностные алгоритмы и структуры данных

Рассматриваем и решаем задачи из области больших данных вероятностными методами

Численные методы оптимизации

Проектная работа

Заключительный месяц курса посвящен проектной работе. Свой проект — это то, что интересно писать слушателю. То, что можно создать на основе знаний, полученных на курсе. При этом не обязательно закончить его за месяц. В процессе написания по проекту можно получить консультации преподавателей.

решение комбинаторных задач

реализация динамического массива

применение различных алгоритмов сортировки, кэширования

работа с деревьями

реализация хэш-таблиц

применение алгоритмов Бойера-Мура, Кнута-Морриса-Пратта, Ахо-Корасика, Лемпела-Зива

применение методов динамического программирования

решение задачи из области больших данных вероятностными методами

работа с нейросетями

Навыки, которые вы получите

 
НЕЙРОСЕТИ

Компания, проводящая курс

OTUS (Отус)

223 курса по 865 темам

Образовательная онлайн-платформа и сообщество IT-профессионалов OTUS (Отус) работает с 2017 года. Компания является резидентом Сколково....

Преподаватели курса

Senior software engineer в EPAM

Закончил Волгоградский Государственный Технический...

Организатор форума по маркетингу в социальных сетях SMM Ural

Среди клиентов агентства: МегаФон, «Полисорб»,...

Автор видеокурсов по C#, Java, PHP

Профессиональный программист. Преподаватель языка Java...

Главный разработчик на iBM i

Опыт разработки программного обеспечения с 1990 года....

разработчик отдел машинного обучения компании Jet Infosystems.

Jet Infosystems Работаю в отделе машинного обучения компании...

Программист в Лаборатории Касперского

Программирую на С++ и Python в течение 18 лет, как хобби —...

Отзывы студентов

Отзывов об этом курсе пока нет

Ниже — отзывы о школе OTUS (Отус): они помогут составить впечатление, но в рейтинге курса не учитываются. Проходили этот курс? Поделитесь — это поможет другим студентам.

больше курсов

Похожие курсы компании

OTUS (Отус)
(0)
OTUS (Отус)
(0)
149 600 
OTUS (Отус)
(1)
106 500 
OTUS (Отус)
(0)
85 000 
OTUS (Отус)
(0)
85 000 
OTUS (Отус)
(0)
50 000 
OTUS (Отус)
(0)
9 680 
OTUS (Отус)
(2)
больше курсов

Другие курсы этих преподавателей

Netology (Нетология)
(15)
59 900 
OTUS (Отус)
(1)
76 500 
OTUS (Отус)
(3)
67 000 
OTUS (Отус)
(9)
98 000 
OTUS (Отус)
(3)
105 000 
OTUS (Отус)
(3)
73 000