- Регистрация
- 24.09.2021
- Сообщения
- 38 365
[Яндекс.Практикум] Алгоритмы для разработчиков - 2021 Принципы, лежащие в основе алгоритмов и структур данных, актуальны для любого стека технологий. Они не устаревают. Знание и понимание этих принципов помогает разработчикам писать более эффективный и аккуратный код. Что нужно для обучения на курсе? - Уверенно владеть одним из языков программирования: C++, Python, Java, Go, JavaScript. Опыт промышленной разработки необязателен. - На курсе будет много заданий с написанием кода, поэтому для прохождения понадобится ноутбук или компьютер. - Не требуется предварительных знаний алгоритмов и структур данных, всё расскажем с нуля. Что вас ждёт на курсе Это курс о базовых алгоритмах и структурах данных. Благодаря нему вы научитесь быстрее писать чистый код, видеть разные варианты решения задачи и сравнивать их по эффективности. Если вы планируете менять место работы, знание алгоритмов пригодится на собеседованиях. Кроме того, в курс включена консультация или сопровождение при поиске работы. Курс рассчитан на 4 месяца при нагрузке примерно 10 часов в неделю, но вы можете проходить его быстрее — новые уроки будут доступны вам по мере изучения материала. 01 - Образовательная инфраструктура Основа всего обучения — это практика. Сначала вы изучаете теоретическую часть в интерактивном учебнике, а затем получаете до 15 практических задач по каждой пройденной теме. Всего на курсе более 100 задач. Интерактивный учебник — это веб-платформа Практикума, в которую встроены уроки и небольшие тесты. Практическая работа идёт в Яндекс.Контесте — специальной платформе, созданной для проверки алгоритмических задач. Вы можете проходить обучение на одном из языков: Python, Java, C++, JavaScript, Go. 02 - Команда экспертов, сокурсников и поддержки Команда экспертов состоит из код-ревьюеров и наставников. Они прошли путь от джуниоров до старших разработчиков и готовы делиться своим опытом. Задача код-ревьюеров — проверять ваши самостоятельные работы и оставлять замечания по делу. Задача наставников — помогать разобраться в материале, отвечать на вопросы и проводить вебинары. Студенты обучаются в группах и общаются в Slack — корпоративном мессенджере, которым пользуются многие IT-компании. Сокурсники видят друг друга, задают и отвечают на вопросы. В итоге получается дружелюбное сообщество, которое значительно помогает в обучении. Чтобы процесс обучения был комфортным, у студентов есть куратор и команда поддержки в чате. Куратор отвечает за организационные вопросы: напоминает о дедлайнах, присылает полезные ссылки и записи вебинаров и поддерживает в трудные моменты. Команда поддержки 24/7 помогает справляться с любыми техническими сложностями. Программа обучения 1 Введение в алгоритмы 20 часов Понятие сложности алгоритма. O-нотация. Оценка времени исполнения программы. 2 Основные структуры данных 20 часов Массив, связный список, стек, очередь. Сложность операций вставки, поиска и удаления. Представление данных в памяти. Пространственная сложность алгоритма. 3 Рекурсия 5 часов Понятие рекурсии. Принцип «разделяй и властвуй». Бинарный поиск. 4 Сортировки 15 часов Квадратичные сортировки. Сортировка слиянием. Быстрая сортировка. Линейная сортировка подсчётом. 5 Хеш-функции и хеш-таблицы 20 часов Абстракция отображения. Понятие и свойства хеш-функции, примеры. Структура данных хеш-таблица. Коллизии и способы их разрешения. 6 Деревья 20 часов Структура данных дерево. Сбалансированные деревья поиска. Структура данных куча. Пирамидальная сортировка. 7 Графы 20 часов Определение графа, способы представления в памяти. Обход графа в глубину и в ширину. Компоненты связности. Алгоритмы поиска кратчайшего пути. Минимальное остовное дерево. 8 Динамическое программирование 15 часов Определение, одномерные и двумерные задачи. Динамическое программирование по подотрезкам. Динамическое программирование по подмножествам. 9 Жадные алгоритмы 5 часов Понятие жадного алгоритма, область применения. Примеры, доказательство корректности алгоритма. 10 Алгоритмы на строках 20 часов Префикс-функция. Подстроки, префиксы и суффиксы. Поиск шаблона в строке. Наивный алгоритм. Структура данных бор. |