Алгоритмы и структуры данных [2020] [SkillFactory] [Павел Труфанов, Дмитрий Никулин]

Bot

Администратор
Команда форума
23 Янв 2020
201,197
3,138
113
Алгоритмы и структуры данных [2020]
SkillFactory
Павел Труфанов, Дмитрий Никулин
Курс для разработчиков, готовых выйти на новый уровень в карьере за короткий срок.


1. Спотыкаетесь при решении хитрых алгоритмических задач на собеседованиях?
2. Сомневаетесь как достоверно посчитать временную сложность алгоритма?
3. Хотите браться за сложные проекты и находить элегантное решение?

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

Спойлер: Кому подойдет курс
1. Начинающим разработчикам для уверенного старта и прохождения технических собеседований.
2. Разработчикам, которые стремятся на уровень выше - на позиции Middle и Senior. Получите выгодное преимущество на фоне других кандидатов.
3. Тем, кто хочет браться за сложные проекты и работать в IT-гигантах, и пройти многоступенчатый жесткий отбор.
4. Тем, кто хочет участвовать в олимпиадном программировании, готов учиться новому и любознательность его второе имя.
Спойлер: Что вас ждет на курсе
1. Фундаментальная теоретическая база
Чтобы научиться писать собственные алгоритмы, нужно знать досконально как они работают.
2. Прокачаетесь в математике
Математика для программистов нужна в серьезных проектах и нетривиальных задачах.
3. Много практики и решения алгоритмических задач
Решаем упражнения и задачи различной сложности, в том числе олимпиадные и бизнес-задачи.
4. Подготовка к техническому собеседованию
Во время курса вы потренируетесь в решении реальных задач с технических собеседований.
Спойлер: После обучения на курсе вы
1. Узнаете почему разработчику важно разбираться в структурах данных и алгоритмах.
2. Научитесь воспроизводить с нуля любой алгоритм и писать собственные.
3. Поймете как увеличивать производительность кода благодаря пониманию временной сложности и затратам по памяти.
4. Сможете сравнивать структуры данных и выбирать оптимальный вариант для конкретной задачи.
5. Начнете уверенно себя чувствовать при прохождении технических собеседований в любые IT-компании мира.
Спойлер: Содержание
Блок 1 - Основной
1. Линейные структуры данных.

  • Введение в алгоритмы и структуры данных.
  • Определение асимптотики, оценка времени работы программы, оценка затраченной памяти.
  • Односвязные и двусвязные списки, работа с ними.
Практика: Реализация LRU и LFU кэша.

2. Рекурсия и комбинаторика.
  • Рекурсивные переборы, переборы всех комбинаторных объектов.
  • Перестановки, разбиение на слагаемые, строки Фибоначчи.
  • Перебор битовых масок.
Практика: Программа по решению кроссвордов Судоку.

3. Сортировки и поиск.
  • Сортировки, использование встроенной функции sort в языках.
  • Алгоритм бинарного поиска. Бинарный поиск по ответу.
Практика: Сортировка больших файлов с данными, потенциально не помещающихся в оперативную память.

4. Хеширование.
  • Принцип хеширования. Парадокс дней рождения. Известные алгоритмы хеширования. Полиномиальное хеширование.
  • Алгоритмы на строках.
  • Хеш-таблица, встроенная реализация, собственная реализация.
Практика: Сокращатель ссылок на подобие bit.ly.

5. Графы.
  • Графы. Представление графов и алгоритм DFS.
  • Графы. Задача о поиске кратчайшего пути в графе, алгоритм BFS.
  • Алгоритм Дейкстры.
Практика: Travel planner - постройка кратчайшего маршрута для путешествия.

6. Деревья.
  • Графы. Представление деревьев. Алгоритмы на деревьях.
  • Бинарное дерево поиска, работа с ним.
  • AVL-дерево.
  • Кучи. Деревья Хаффмана.
Практика: Архиватор файлов.

7. Динамическое программирование.
  • Задачи динамического программирования. Базовые применения. Префиксные суммы.
  • Задачи динамического программирования. Сложные задачи. Задача о рюкзаке.
  • Конечные автоматы. Регулярные выражения.
Практика: Применение регулярных выражение.

Блок 2- карьерный
  • Фишки прохождения технических собеседований в крупные IT-компании.
  • Mock-интервью «Собеседование в Amazon».

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