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