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

Online
Middle/senior

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

О курсе

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

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

Познакомимся с основными и наиболее используемыми структурами данных: массив, список, стек, очередь, хеш-таблица, дерево, бинарное дерево поиска.

Разберем большое количество алгоритмов сортировки, среди которых быстрая сортировка, heap-sort, сортировка подсчетом и др. Поскольку алгоритм быстрой сортировки пользуется популярностью на собеседованиях, рассмотрим его очень подробно (Какой элемент выбрать опорным и почему? Какие есть схемы разбиения, их преимущества и недостатки?)

Поговорим о делителях числа, простых числах, факторизации. Рассмотрим алгоритм Евклида для нахождения наибольшего общего делителя и наименьшего общего кратного. Познакомимся с алгоритмом «решето Эратосфена» для нахождения простых чисел.

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

Разберемся, как работают более сложные алгоритмы на графах: алгоритм Дейкстры и алгоритм Прима. Научимся находить мосты и точки сочленения для заданного графа.

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

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

Рассмотрим принципы балансировки AVL-дерева. Решим несколько популярных задач, а также проверим полученные знания с помощью викторины.

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

Как проходит обучение
  • Вы получаете доступ к закрытым лекциям (9 лекций, которые разбиты на 2-4 коротких видео).
  • Прослушиваете их, изучаете новую интересную информацию.
Условия обучения
  • Доступ к курсу неограниченный.
  • Автор курса отвечает на ваши вопросы в чате Slack на протяжении 3х месяцев после покупки курса
Требования для начала обучения
  • Знание одного из современных языков программирования (Java, C/C++, C#, Python и др.) на базовом уровне
  • Практика программирования (необязательно коммерческого) от полугода.
  • Какой наш курс можно использовать для подготовки? Любой курс программирования уровня Start (например, Java start).
Online

Online тренинг

  • Неограниченный доступ к видео-лекциям и заданиям
  • Без проверки

Как проходит обучение?

Регистрация

Регистрируешься на курс

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

С тобой связывается сотрудник FoxmindEd и отвечает на все твои вопросы

Доступ

После оплаты ты получаешь доступ к видеолекциям

Лекции и практика

Просматриваешь видеолекции от автора курса, выполняешь практические задания

Есть вопросы?

Задаешь вопрос автору курса в Slack и получаешь на него ответ

Следующая лекция

Переходишь к следующей видео-лекции

Подробнее
Автор курса
Басалкевич Александр
Senior C++ Engineer
Басалкевич Александр Senior C++ Engineer

Занимаюсь разработкой программного обеспечения в сфере Embedded medicine. Также являюсь внутренним спикером и тренером компании в рамках GlobalLogic Education. Еще в старшей школе начал заниматься алгоритмическим программированием. Трижды был участником полуфинала ACM ICPC.

Сертификат об окончании

Сертификат об окончании

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

Записаться на курс

Обратите внимание!
Мы не сотрудничаем с резидентами РФ и РБ!

    Выберите курс:

    Выберите валюту для оплаты:

    Отправляя сообщение, я соглашаюсь с офертой.

    Алгоритмы и структуры данных – актуальность курса

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

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

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

     

    Почему стоит изучать алгоритмы и структуры данных вместе с FoxmindEd

     

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

    Автор курса по алгоритмам и структурам данных, Александр Басалкевич, работает Senior C++ Developer в крупнейшей украинской компании Global Logic. Кроме того, Александр является внутренним спикером и тренером компании в рамках GlobalLogic Education. Объединенная экспертиза FoxmindEd и Александра Басалкевича — вот гарантия качества этого курса.