🌀Яндекс.Практикум
⚙️Алгоритмы для разработчиков. Часть 1 - 4 (2021)
🔹
Описание:
▪️Стать крутым инженером будет проще разработчику, который знаком со структурами данных и алгоритмами. Крупнейшие IT-компании мира и многие стартапы проверяют на собеседованиях алгоритмическую подготовку соискателей. Это лучший способ убедиться, что человек умеет быстро думать и писать работающий код. В этом курсе вы напишете много кода, научитесь оценивать эффективность решений, набьёте руку на практических заданиях, пройдёте учебное собеседование, максимально приближенное к реальности.
🔹
Программа обучения:
▪️
Введение в алгоритмы
5 часов
Определение алгоритма. Понятие сложности алгоритмов. O-нотация.
▪️
Основные структуры данных
15 часов
Массив, связный список, стек, очередь. Представление в памяти, сложность операций вставки, поиска и удаления. Преимущества и недостатки использования.
▪️
Жадные алгоритмы
5 часов
Понятие жадного алгоритма, область применения. Примеры, доказательство корректности алгоритма.
▪️
Рекурсия
5 часов
Понятние рекурсии. Основная теорема о рекурсии. Принцип разделяй и властвуй. Преимущества и недостатки метода.
▪️
Сортировки
10 часов
Квадратичные сортировки. Сортировка слиянием. Алгоритм нахождения k-й порядковой статистики, быстрая сортировка. Сортировки с использованием свойств элементов. Внешняя сортировка.
▪️
Деревья
20 часов
Бинарный поиск. Деревья поиска. Сбалансированные деревья. Куча. Пирамидальная сортировка. Некоторые специальные деревья.
▪️
Алгоритмы на строках
20 часов
Алгоритм Хаффмана. Структура данных префиксное дерево. Алгоритмы поиска подстроки в строке.
▪️
Хеш-таблицы. Понятие и свойства хеш-функции.
10 часов
Абстракция отображение. Понятие и свойства хеш-функции, примеры. Коллизии и способы их разрешения. Множества. Битовые маски. Фильтр Блума.
▪️
Динамическое программирование
10 часов
Базовое динамическое программирование, одномерные и двумерные задачи. Динамическое программирование по подотрезкам. Динамическое программирование по подмножествам. Динамическое программирование по поддеревьям.
▪️
Графы
10 часов
Определение графа, способы представления в памяти. Обходы графов: DFS, BFS. Связность. Алгоритмы поиска кратчайших путей в графах. Построения минимального остовного дерева.
Скачать (Часть 1)
Скачать (Часть 2)
Скачать (Часть 3)
Скачать (Часть 4)
#ЯндексПрактикум
@buguser