Образовательная платформа
Изображение для плашки ЧП Участвует в распродаже Скидка 15%
действует 0 дней 00:00:00
Курс

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

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

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

Кому подойдёт этот курс

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

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

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

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

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

    Получите информацию, которая позволит работать на проектах, связанных с системами высокой нагрузки и обработкой Big Data.

  • Всем, кто готовится к состязаниям в IT-области

    Всем, кто готовится к состязаниям в IT-области

    Вы научитесь пользоваться алгоритмами для решения задач.

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

  1. Базовым алгоритмам

    Узнаете, как реализовать алгоритмы на массивах и алгоритмы бинарного поиска.

  2. Работе со структурами данных

    Разберётесь, как работать со структурами данных.

  3. Работе с вариантами алгоритмов

    Научитесь создавать сортировочные алгоритмы.

  4. Пониманию правил оценки алгоритмов

    Узнаете, как давать оценку алгоритмам. Сможете оптимизировать код.

Как проходит обучение на платформе

  1. Смотрите материалы в удобное время

    Изучаете теорию и практикуетесь на задачах, приближённых к реальным.

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

    Решаете задачи после каждого модуля и закрепляете знания.

    Выполняете практические работы
  3. Работаете с проверяющим экспертом

    Получаете обратную связь по каждой работе в течение 1–3 рабочих дней.

    Работаете с проверяющим экспертом
  4. Получаете сертификат о прохождении курса

    И дополняете им своё портфолио.

    Получаете сертификат о прохождении курса

Содержание курса

Вас ждут видеоматериалы и практика на основе реальных кейсов.

  • 18 тематических модулей
  • 103 видео
  1. Введение в алгоритмы

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

  2. Алгоритм бинарного поиска

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

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

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

  4. Связные списки

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

  5. Стек и очередь

    Познакомитесь со структурами данных — стек, очередь и дек (двусвязная очередь), узнаете принципы их построения и работы.

  6. Основы алгоритмов сортировки

    Узнаете о принципах и особенностях популярных алгоритмов сортировки — SelectionSort, QuickSort и MergeSort. Научитесь оценивать на их примерах сложность алгоритмов по времени и памяти.

  7. Рекурсивные алгоритмы

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

  8. Сложность алгоритмов

    Узнаете, что такое О-нотация, научитесь оценивать сложность алгоритмов и различать их по памяти и времени.

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

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

  10. Деревья. Двоичные деревья поиска

    Узнаете о принципах работы и особенностях деревьев на примере бинарного дерева. Познакомитесь с алгоритмами поиска, добавления и удаления элементов из него.

  11. Деревья. Обход в ширину и глубину

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

  12. Куча (Heap)

    Узнаете, как работать со структурой данных куча: поймёте, как она устроена, научитесь добавлять и удалять элементы, сортировать данные внутри.

  13. Бор. Суффиксное дерево. B-дерево

    Узнаете, что такое суффиксные деревья и как они применяются в алгоритмах поиска и сжатия.

  14. Графы и рекурсивные алгоритмы

    Узнаете, что такое графы и как их обходить в длину и ширину.

  15. Топологическая сортировка и неочевидные применения графов

    Разберёте распространённые задачи на графах, познакомитесь с алгоритмом Дейкстры.

  16. Алгоритмы сжатия информации

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

  17. Битовые алгоритмы

    Научитесь работать с основными битовыми операциями и алгоритмами, которые часто применяют на практике. Изучите маски и битовые индексы.

  18. Алгоритмы хэширования. Криптографические алгоритмы

    Изучите принципы работы алгоритма расчёта контрольных сумм CRC и алгоритмов хеширования MD5 и SHA.

Спикеры

Михаил Овчинников

Михаил
Овчинников

Ведущий инженер-программист в Badoo

Специалист в области разработки высоконагруженных систем и обработки больших данных. Докладчик крупнейших IT-конференций России. Более 15 лет опыта в IT — от стартапов до крупных компаний.

Илья Павлов

Илья
Павлов

Разработчик в Nvidia

Специалист в области алгоритмов и структур данных. Проходил стажировку в главных офисах Microsoft и Asana. Занимался исследованиями в области алгоритмов в Huawei. Работал над поиском в Яндексе. Преподаёт в МФТИ.

  • Старт курса: 25 января
  • Осталось: 4 места

Стоимость курса

  • Рассрочка без переплат
  • 18 494 ₸/мес
  • 21 758 ₸/мес
Изображение для плашки ЧП Участвует в распродаже Скидка 15%
действует 0 дня 00:00:00

Шаг 1. Выберите вариант оплаты

Шаг 2. Заполните контактные данные

Похоже, произошла ошибка. Попробуйте отправить снова или перезагрузите страницу.

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

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

Спасибо!

Ваша заявка успешно отправлена

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

  • Я никогда не работал с алгоритмами и структурами данных. У меня получится?

    Для начала прохождения курса вам достаточно знать, что такое массив, и уметь с ним работать на любом современном языке программирования. Материалы рассчитаны на слушателя любого уровня подготовки, а со сложными моментами всегда помогут наши кураторы. У вас обязательно получится!
  • На каком языке программирования будут даны примеры реализации алгоритмов и структур данных?

    Примеры в видеоматериалах будут на Java. Код примеров простой, и вы без труда его поймёте, даже если не знаете особенностей Java. К материалам также будут приложены примеры ещё на восьми языках: Python, JavaScript, PHP, C#, Go, C++, Swift, Kotlin.
  • Какой график обучения на платформе? Получится ли совмещать его с работой?

    Вы можете изучать материалы курса в удобном вам режиме, совмещать обучение на платформе с работой и личной жизнью. Более того, все видео будут доступны и по окончании курса, так что вы сможете освежить свои знания в любой момент.
  • Сколько часов в неделю мне нужно будет уделять обучению на платформе?

    Всё зависит только от вас. В среднем пользователи платформы занимаются от 3 до 5 часов в неделю.
  • Кто будет мне помогать в обучении на платформе?

    У вас будут проверяющие эксперты и куратор в Telegram-чате курса. Они прокомментируют практические работы, дадут полезные советы и ответят на любые вопросы. Вы сможете перенять их опыт, профессиональные знания и лайфхаки.
  • Действуют ли какие-нибудь программы рассрочки?

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