Алгоритмический фундамент программиста

Приобретите навыки применения на практике стандартных алгоритмов и структур данных в окружении единомышленников и под руководством опытных наставников
Курс рассчитан на два месяца
Сертификат Stepik

О курсе

Курс рассчитан на 2 месяца и содержит

  1. объяснение простым и доступным языком алгоритмов и структур данных, владение которыми необходимо большинству разработчиков 
  2. 100 алгоритмических задач, которые решит каждый из вас, и мы будем поддерживать вас до тех пор, пока вы не решите их все
  3. разборы каждой из этих задач (отдельно разбор идеи решения и кода)

Список тем, рассмотренных в курсе

  1. асимптотические оценки
    • O-нотация
    • асимптотические оценки известных алгоритмов как строительные блоки
  2. алгоритмы поиска
    • линейный поиск - как простейший пример
    • двоичный поиск
    • метод двух указателей
  3. базовые структуры данных
    • стек
    • очередь
    • дек
    • двусвязный список
  4. сортировки
    • квадратичные сортировки — как простейший пример
    • сортировка слияниями
    • устойчивость сортировки
    • поразрядная сортировка
    • быстрая сортировка (nth_element, partition)
  5. куча
    • устройство и асимптотики
    • сортировка кучей
    • построение за O(N)
    • стандартные алгоритмы STL
    • partial_sort
    • многопутевое слияние
  6. графы
    • поиск в глубину и ширину
    • поиск циклов в неориентированных графах
    • поиск циклов в ориентированных графах
    • топологическая сортировка
  7. двоичные деревья поиска
    • главное свойство
    • асимптотики
    • поиск, вставка и удаление
    • только в теории о сбалансированных деревьях
    • inorder, preorder, postorder обходы
    • std::set и его аналоги
  8. хеш-таблицы
    • асимптотики
    • внутреннее устройство
    • std::unordered_map и его аналоги

Для кого этот курс

— Люди, которые завалили собеседование в компанию уровня FAANG и хотят прокачаться в прохождении coding interview — Люди, которые хотят перейти в программирование из другой области — Люди, которые работают в IT-сфере в какой-то роли (менеджер, системный администратор, тестировщик) и хотят перейти в разработку

Начальные требования

  • Уметь программировать на одном из языков программирования C++, Java, Python
  • Неважно, какой язык для вас является основным, знакомство с С++ сильно упростит для вас прохождение курса

Наши преподаватели

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

загружаем...
Certificate

Сертификат

Сертификат Stepik

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

Price: 60 000 
Вы попробовали и поняли, что вам сейчас не подходит этот курс? Ничего страшного, мы вернём вам деньги в течение 30-ти дней после покупки.

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

Расскажите о курсе друзьям

Price: 60 000