Алгоритмы и структуры данных для разработчиков
Рейтинг школы
Вдруг есть дешевле?
Описание курса
Вы получите фундаментальные знания и научитесь решать реальные задачи с помощью алгоритмов. Сможете устроиться в любую компанию и участвовать в сложных высокооплачиваемых проектах.
Введение в алгоритмы и структуры данных
Познакомитесь со структурой курса, с понятиями алгоритма и структуры данных, а также с простейшими алгоритмами на массивах.
Алгоритм бинарного поиска
Узнаете, что такое бинарный поиск, как он работает, почему и насколько он эффективнее простого поиска перебором, а также о его возможностях и тонкостях.
Хеш-таблицы и хеш-функции
Изучите принципы построения хеш-таблиц и особенности работы с ними, познакомитесь с понятием хеш-функции, проблемой их коллизий, а также решением этой проблемы.
Связные списки
Узнаете, по каким принципам строятся и как работают односвязный и двусвязный списки, чем они лучше и чем хуже массивов.
Стек и очередь
Познакомитесь со структурами данных — стек, очередь и дек (двусвязная очередь), узнаете принципы их построения и работы.
Основы алгоритмов сортировки
Узнаете о принципах и особенностях популярных алгоритмов сортировки — SelectionSort, QuickSort и MergeSort. Научитесь оценивать на их примерах сложность алгоритмов по времени и памяти.
Рекурсивные алгоритмы
Научитесь создавать и применять рекурсивные алгоритмы, а также познакомитесь с принципами оценки их сложности.
Сложность алгоритмов
Узнаете, что такое О-нотация, научитесь оценивать сложность алгоритмов и различать их по памяти и времени.
Жадные алгоритмы
Познакомитесь с принципами работы жадных алгоритмов на примере итераций с двумя и тремя индексами, а также алгоритмов на строках.
Деревья. Двоичные деревья поиска
Узнаете о принципах работы и особенностях деревьев на примере бинарного дерева. Познакомитесь с алгоритмами поиска, добавления и удаления элементов из него.
Деревья. Обход в ширину и глубину
Познакомитесь со сложными типами деревьев, которые применяют на практике. Узнаете, как они устроены, и научитесь с ними работать.
Куча (Heap)
Узнаете, как работать со структурой данных куча: поймёте, как она устроена, научитесь добавлять и удалять элементы, сортировать данные внутри.
Бор. Суффиксное дерево. B-дерево
Узнаете, что такое суффиксные деревья и как они применяются в алгоритмах поиска и сжатия.
Графы и рекурсивные алгоритмы
Узнаете, что такое графы и как их обходить в длину и ширину.
Топологическая сортировка и неочевидные применения графов
Разберёте распространённые задачи на графах, познакомитесь с алгоритмом Дейкстры.
Алгоритмы сжатия информации
Изучите алгоритмы сжатия информации без потерь. Узнаете, по каким принципам работают современные алгоритмы архивации.
Битовые алгоритмы
Научитесь работать с основными битовыми операциями и алгоритмами, которые часто применяют на практике.
Алгоритмы хеширования. Криптографические алгоритмы
Изучите принципы работы алгоритма расчёта контрольных сумм CRC и алгоритмов хеширования MD5 и SHA.
онлайн
- Ведущий разработчик в Badoo. Стаж в разработке: 10+ лет
- Разработчик в NVIDIA, опыт в IT — 7 лет
- Инженер-разработчик в Яндексе. Опыт в IT — более 6 лет
- Освоение базовых алгоритмов
- Работа со структурами данных
- Реализация алгоритмов сортировки
- Оценка сложности алгоритмов
- Создание и применение рекурсивных и жадных алгоритмов
- Junior-разработчики
- Middle-разработчики
- Тем, кто готовится к олимпиадам
Выводы о курсе
Возможны неточности
Курс «Алгоритмы и структуры данных для разработчиков» предоставляет мощный уровень практических знаний, необходимых для успешной карьеры в IT. Погружение в алгоритмы и структуры данных открывает возможности участия в сложных проектах и олимпиадах. Практическая работа и поддержка кураторов помогут вам освоить уроки на высшем уровне.
Отзывы о школе Skillbox
Читать все отзывыВопрос-ответ
Рекомендованные курсы
