СДО ИДО
ЦК_М2_ Базовые алгоритмы и структуры данных на языке Python. Часть 3
0%
Пред.
Course data
Общее
Объявления
Репозиторий для работы с лабораторными работами
Тасктрекер для заданий Edutools
Тасктрекер для лабораторных заданий
Лабораторные работы
Список Collaborator для GitHub по группам студентов
Лабораторная работа 0.
Лабораторная работа 1
Лабораторная работа 2
Лабораторная работа 3
Лабораторная работа 4
Вебинар 21.02.2023
Вебинар 02.03.2023
Вебинар 16.03.2023
O-нотация. Простые структуры данных
O-нотация. Простые структуры данных.ipynb
Введение (8 мин)
1.1. Понятие алгоритма. Пространственные затраты (10 мин)
1.2. Понятие алгоритма. Временные затраты (6 мин)
2.1. О-большое, омега-большое и тета (15 мин)
2.2. О-большое. Примеры (7 мин)
3.1. Правила вычисления (13 мин)
3.2. Примеры. Задача 1 и 2 (10 мин)
3.3. Примеры. Задача 3 и 4 (3 мин)
3.4. Примеры. Задача 5 (2 мин)
4.1. Почему важно оценивать О-большое? (6 мин)
4.2. Задачки на интуицию (9 мин)
1. Понятие структуры данных (4 мин)
2. Массив (array) (10 мин)
3. Связанный список (list) (6 мин)
4. Массив VS Список (8 мин)
5. Стек (Stack) (6 мин)
6.1. Очередь (Queue) (2 мин)
6.2. Очередь с приоритетами (8 мин)
6.3. Примеры очередей (2 мин)
7. Выводы (2 мин)
1. Стек (17 мин)
2. Очередь с приоритетами (24 мин)
Итеративные и рекурсивные алгоритмы
Итеративные и рекурсивные алгоритмы.ipynb
1.1. Понятие итеративных алгоритмов (3 мин)
1.2. Примеры итеративных алгоритмов (2 мин)
2. Линейный поиск (4 мин)
3.1. Бинарный поиск (6 мин)
3.2. Бинарный поиск. Особенные моменты (5 мин)
4. Сравнение бинарного и линейного поиска (5 мин)
1. Понятие рекурсивных алгоритмов (2 мин)
2.1. Факториал (6 мин)
2.2. Проблемы рекурсии (5 мин)
3.1. Числа Фибоначчи (8 мин)
3.2. Числа Фибоначчи. Экпоненциальная сложность (6 мин)
4. Рекурсивные алгоритмы VS Итеративные алгоритмы (4 мин)
1. Итеративный Фибоначчи (10 мин)
2. Рекурсивный Фибоначчи (10 мин)
3. Рекурсивный бинарный поиск (27 мин)
Сортировки
Сортировки.ipynb
Понятие сортировки (8 мин)
1. Сортировка выбором (5 мин)
2. Пузырьковая сортировка (8 мин)
3. Сортировка слиянием (9 мин)
4. Быстрая сортировка (8 мин)
5. QuickSort vs MergeSort (3 мин)
1. Сортировки не основанные на сравнении (2 мин)
2. Блочная сортировка (5 мин)
3. Сортировка подсчетами (3 мин)
1. Быстрая сортировка (13 мин)
2. Сортировка слиянием (20 мин)
Динамическое программирование
Динамическое программирование.ipynb
1. Понятие динамического программирования (4 мин)
2.1. Порядок пересчета (5 мин)
2.2. Прямой метод песчета (10 мин)
2.3. Обратный метод (10 мин)
2.4. Ленивая динамика (6 мин)
3.1 Хеш-таблицы (11 мин)
3.2. Кеширование (6 мин)
4. Зачем нужны алгоритмы динамического программирования (3 мин)
1. Задача 1 (11 мин)
2. Задача 2 (20 мин)
3. Реальные примеры (9 мин)
1. Лестница. Количество маршрутов (10 мин)
2. Платная лестница. Прямой метод обхода (12 мин)
3.1. Платная лестница. Ленивая динамика (11 мин)
3.2. Платная лестница. Ленивая динамика. Альтернативная версия (5 мин)
4. Ракета. Самый дешевый маршрут (25 мин)
Графы и деревья
Графы и деревья.ipynb
1. Понятия графа (2 мин)
2. Виды графов (10 мин)
3. Практическое применение графов (5 мин)
4.1. Представление графов. Список ребер (3 мин)
4.2. Представление графов. Матрица смежности (4 мин)
4.3. Представление графов. Матрица инцедентности (3 мин)
4.4. Представление графов. Списки смежности (2 мин)
5. Зачем мне знать все эти виды графов. Модуль networkx (10 мин)
1. Алгоритмы на графах (3 мин)
2. BFS. Поиск в ширину (11 мин)
3. DFS. Поиск в глубину (8 мин)
1. Понятие дерева (5 мин)
2. Сложность операций на деревьях (6 мин)
3.1. Примеры деревьев. Бинарное дерево поиска (BST) (14 мин)
3.2. Примеры деревьев. Куча (Heap) (4 мин)
3.3. Примеры деревьев. B-дерево (B-tree) (5 мин)
1. Обход в ширину (26 мин)
2. Обход в глубину (12 мин)
3.1. Дейкстра. Кратчайший путь (3 мин)
3.2. Дейкстра. Кратчайший путь (10 мин)
Тема 6. Системы контроля версий
Системы контроля версий.ipynb
1. Контроль версий, репозиторий (5 мин)
2. Commit - фиксирование состояния (11 мин)
3. Удаленный репозиторий (9 мин)
4. Рабочий каталог и область подготовки данных (5 мин)
1. Понятие ветвления (5 мин)
2. Ветки (Branches) (3 мин)
3. Слияние веток (6 мин)
4. Конфликты при слиянии (5 мин)
1. Удаленные ветки и репозитории (5 мин)
2. Отправка изменений (3 мин)
3. Получение изменений (4 мин)
1. Понятие Git flow (8 мин)
2. Основные ветви (2 мин)
3. Вспомогательные ветви. Feature branches (3 мин)
4. Pull request (7 мин)
След.
Боковая панель
СДО ИДО
Русский (ru)
Русский (ru)
English (en)
Введите ваш поисковый запрос
Вход
ЦК_М2_ Базовые алгоритмы и структуры данных на языке Python. Часть 3
В начало
Перейти к основному содержанию
Информация о курсе
В начало
Курсы
Цифровые кафедры
Программирование для BIM-платформ
ЦК_М2_ Базовые алгоритмы и структуры данных на языке Python. Часть 3
Описание
ЦК_М2_ Базовые алгоритмы и структуры данных на языке Python. Часть 3
Преподаватель:
Первушин Алексей