Сложность
Сложность
Продвинутый
Тип обучения
Тип обучения
Курс
Трудоустройство
Трудоустройство
Отсутствует
Сертификат
Сертификат
Да

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

10 900 ₽
есть рассрочка

Курс поможет вам получить востребованный навык и повысить свою ценность на рынке

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

Необходимые знания: JavaScript
Гибкие сроки: начинайте прямо сейчас и двигайтесь в комфортном режиме

Благодаря грамотному использованию алгоритмов и структур данных вы сможете:

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

Что вы получите после обучения

Приобретаемые навыки
1
Алгоритмы
2
Сортировка
3
Парсинг данных
4
Хранение оповещений
5
Фильтрация дубликатов
6
Хеш-таблицы
7
Динамическое программирование

Образовательная организация

Наша цель — сделать из любого новичка полноценного и востребованного специалиста, готового работать в веб-индустрии.

В 2013 году Саша и Лёша запустили HTML Academy. Мы с самого начала решили учить работать с живым кодом, решая задачи, приближенные к реальным. Мы даём возможность получить не только знания, но и умения. В процессе обучения мы сталкиваем ученика с испытаниями, принцип которых — «сверстай, как показано в образце». Именно по такому принципу работают большинство верстальщиков.

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

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

Если тренажёров и курсов вам будет мало, то можно посмотреть на книжную полку, где мы постепенно собираем книги по веб-разработке. Или зайти к нам на форум и обсудить волнующий вас вопрос.

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

Раздел 1 Общие знания

Познакомимся с системой оценки эффективности алгоритмов и важностью её оптимизации

Зачем фронтендеру оптимизировать алгоритмы?
Определение факториала
O-нотация
Кейс: примеры алгоритмически переусложнённого кода
Тест на знание простых алгоритмов

Раздел 2 Структуры данных

Разберёмся во встроенных структурах данных и посмотрим, насколько хранение данных в правильном формате упрощает задачи

Структуры данных, встроенные в JavaScript
Практика: посмотрим на одну из встречающихся в реальной жизни задачек на стек
Практика: увидим, насколько важно выбирать под задачу нужный формат данных
Тест на оценку сложности функций

Раздел 3 Поиск

Узнаем о самых популярных алгоритмах поиска

Линейный поиск
Бинарный поиск
Кейс: реализация бинарного поиска на практике
Практическое задание

Раздел 4 Разделяй и властвуй

Рассмотрим парадигму решения алгоритмических задач «Разделяй и властвуй» и познакомимся с рекурсией

Рекурсия
Практика: уменьшение вложенности массива
Практика: числа Фибоначчи или самое популярное применение рекурсии
‍Разделяй и властвуй
Практика: рекурсивный бинарный поиск
Практическое задание

Раздел 5 Cортировки

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

Виды сортировок
Сортировка пузырьком
Практика: реализация сортировки пузырьком
Quicksort
Практика: реализация quicksort
Поддержание отсортированности
Практика: дозапрос элементов с API
Практическое задание: частичная сортировка
Кейс: модифицированная сортировка пузырьком
Кейс: модифицированный quicksort

Раздел 6 Деревья

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

Граф
DOM — самое известное дерево фронтенда
Кейс: обход DOM-дерева
Практическое задание
‍Бинарное дерево поиска
Кейс: бинарное дерево поиска

Раздел 7 Хеш-таблицы

Чуть лучше узнаем Map и принципы его работы

Хеш-таблицы
Хеш-функция и коллизии
Кейс: решаем самую частую проблему, в которой помогает Map
Практическое задание
Кейс: улучшаем логирование

Раздел 8 Стек и очередь

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

Вспомним о стеке
Стек вызовов: цена за простоту рекурсии
Кейс: заменяем рекурсию на циклы
Кейс: заменяем рекурсию на стек‍
Очередь
Кейс: очереди для симуляции
Практическое задание
Кейс: симуляция игры
Дополнительно: двусторонняя очередь

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

Разберём ещё одну концепцию для решения алгоритмических задач и посмотрим на классические задачи, которые она решает

Определение жадных алгоритмов
Кейс: популярная задача на жадность
Алгоритм Дейкстры
Практическое задание: мини-игра
Кейс: прыжки в массиве
Что не решается жадностью

Раздел 10 Динамическое программирование

Дополним решение задачи из прошлого раздела новыми идеями!

Определение динамического программирования
Кейс: решаем задачу о рюкзаке в «ручном» режиме
Кейс: решаем задачу о рюкзаке кодом
Практическое задание: максимальная прибыль от акций
Кейс: решение задачи динамическим программированием

Рейтинг курса

4
рейтинг
0
0
0
0
0

Может быть интересно

обновлено 21.04.2024 08:07
Алгоритмы и структуры данных

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

Оставить отзыв
Поделиться курсом с друзьями