Алгоритмы и структуры данных для разработчиков
Вы узнаете, как эффективно решать рабочие задачи, используя алгоритмы. Завершив обучение, сможете устроиться в IT-компанию и выйти на новый уровень оплаты труда.
- Длительность 3 мес
- Академические знания в удобном онлайн-формате
- Постепенное увеличение сложности
- Доступ к курсу навсегда
Кому подойдёт этот курс
- Junior-разработчикам Узнаете, как разрабатывать и использовать алгоритмы.
- Middle-разработчикам
Получите информацию, которая позволит работать на проектах, связанных с системами высокой нагрузки и обработкой Big Data.
- Всем, кто готовится к состязаниям в IT-области Вы научитесь пользоваться алгоритмами для решения задач.
Чему вы научитесь
- Базовым алгоритмам
Узнаете, как реализовать алгоритмы на массивах и алгоритмы бинарного поиска.
- Работе со структурами данных
Разберётесь, как работать со структурами данных.
- Работе с вариантами алгоритмов
Научитесь создавать сортировочные алгоритмы.
- Пониманию правил оценки алгоритмов Узнаете, как давать оценку алгоритмам. Сможете оптимизировать код.
Как проходит обучение на платформе
Содержание курса
Вас ждут видеоматериалы и практика на основе реальных кейсов.
- 3 месяца обучения
- 18 тематических модулей
-
Введение в алгоритмы
Познакомитесь со структурой курса, с понятиями алгоритма и структуры данных, а также с простейшими алгоритмами на массивах.
-
Алгоритм бинарного поиска
Узнаете, что такое бинарный поиск, как он работает, почему и насколько он эффективнее простого поиска перебором, а также о его возможностях и тонкостях.
-
Хеш-таблицы и хеш-функции
Изучите принципы построения хеш-таблиц и особенности работы с ними, познакомитесь с понятием хеш-функции, проблемой их коллизий, а также решением этой проблемы.
-
Связные списки
Узнаете, по каким принципам строятся и как работают односвязный и двусвязный списки, чем они лучше и чем хуже массивов.
-
Стек и очередь
Познакомитесь со структурами данных — стек, очередь и дек (двусвязная очередь), узнаете принципы их построения и работы.
-
Основы алгоритмов сортировки
Узнаете о принципах и особенностях популярных алгоритмов сортировки — SelectionSort, QuickSort и MergeSort. Научитесь оценивать на их примерах сложность алгоритмов по времени и памяти.
-
Рекурсивные алгоритмы
Научитесь создавать и применять рекурсивные алгоритмы, а также познакомитесь с принципами оценки их сложности.
-
Сложность алгоритмов
Узнаете, что такое О-нотация, научитесь оценивать сложность алгоритмов и различать их по памяти и времени.
-
Жадные алгоритмы
Познакомитесь с принципами работы жадных алгоритмов на примере итераций с двумя и тремя индексами, а также алгоритмов на строках.
-
Деревья. Двоичные деревья поиска
Узнаете о принципах работы и особенностях деревьев на примере бинарного дерева. Познакомитесь с алгоритмами поиска, добавления и удаления элементов из него.
-
Деревья. Обход в ширину и глубину
Познакомитесь со сложными типами деревьев, которые применяют на практике. Узнаете, как они устроены, и научитесь с ними работать.
-
Куча (Heap)
Узнаете, как работать со структурой данных куча: поймёте, как она устроена, научитесь добавлять и удалять элементы, сортировать данные внутри.
-
Бор. Суффиксное дерево. B-дерево
Узнаете, что такое суффиксные деревья и как они применяются в алгоритмах поиска и сжатия.
-
Графы и рекурсивные алгоритмы
Узнаете, что такое графы и как их обходить в длину и ширину.
-
Топологическая сортировка и неочевидные применения графов
Разберёте распространённые задачи на графах, познакомитесь с алгоритмом Дейкстры.
-
Алгоритмы сжатия информации
Изучите алгоритмы сжатия информации без потерь. Узнаете, по каким принципам работают современные алгоритмы архивации, а также какие алгоритмы используются для сжатия аудиофайлов и изображений.
-
Битовые алгоритмы
Научитесь работать с основными битовыми операциями и алгоритмами, которые часто применяют на практике. Изучите маски и битовые индексы.
-
Алгоритмы хеширования. Криптографические алгоритмы
Изучите принципы работы алгоритма расчёта контрольных сумм CRC и алгоритмов хеширования MD5 и SHA.
Спикеры
- Михаил Овчинников
Ведущий разработчик в Badoo. Стаж в разработке: 10+ лет
- Илья Павлов
Разработчик в NVIDIA, опыт в IT — 7 лет
- Анна Коптева
Инженер-разработчик в Яндексе. Опыт в IT — более 6 лет
Часто задаваемые вопросы
-
Я никогда не работал с алгоритмами и структурами данных. У меня получится?
Для начала прохождения курса вам достаточно знать, что такое массив, и уметь с ним работать на любом современном языке программирования. Материалы рассчитаны на слушателя любого уровня подготовки, а со сложными моментами всегда помогут наши кураторы. У вас обязательно получится!
-
На каком языке программирования будут даны примеры реализации алгоритмов и структур данных?
Примеры в видеоматериалах будут на Java. Код примеров простой, и вы без труда его поймёте, даже если не знаете особенностей Java. К материалам также будут приложены примеры ещё на восьми языках: Python, JavaScript, PHP, C#, Go, C++, Swift, Kotlin.
-
Какой график обучения на платформе? Получится ли совмещать его с работой?
Вы можете изучать материалы курса в удобном вам режиме, совмещать обучение на платформе с работой и личной жизнью. Более того, все видео будут доступны и по окончании курса, так что вы сможете освежить свои знания в любой момент.
-
Сколько часов в неделю мне нужно будет уделять обучению на платформе?
В среднем пользователи платформы занимаются около 2 часов в день и завершают курс за 3 месяца. Но у нас нет жёстких дедлайнов — учитесь на платформе в комфортном для вас темпе.
-
Кто будет мне помогать в обучении на платформе?
У вас будут проверяющие эксперты и куратор в Telegram-чате курса. Они прокомментируют практические работы, дадут полезные советы и ответят на любые вопросы. Вы сможете перенять их опыт, профессиональные знания и лайфхаки.
-
Действуют ли какие-нибудь программы рассрочки?
Да, вы можете купить курс в рассрочку — и спланировать свой бюджет, разбив всю сумму на небольшие ежемесячные платежи.
- Минск
- Ташкент
- Баку
- Астана
- Кишинев
- Бишкек
- Москва
- Алматы
- Шымкент
- Актобе
- Семей
- Караганда
- Павлодар
- Атырау
- Гомель
- Могилев
- Наманган
- Самарканд
- ОШ
- Тирасполь
- Бельцы
Отзывы участников
По итогу 9-месячной учёбы стал по-другому смотреть на сайты. Замечаю баги, разбираюсь в вёрстке, веду репорты. Узнал, как работать со специфическим ПО.
Уже сейчас нисколько не жалею, что выбрал Skillbox. Спасибо!!!
Ну, и умение верстать журналы! Теперь я, как самый настоящий графический дизайнер, с лёгкостью могу создать разворот какого-нибудь модного журнала.
6 отзывов