1

Этап 1

Лекция 1. «Введение. Исполнители. Абстракции интерфейсов. Рекурсия»

23 января—23 января

2

Этап 2

Лекция 2. «Жадные алгоритмы»

24 января—24 января

3

Этап 3

Лекция 3. «Сортировки»

26 января—26 января

4

Этап 4

Лекция 4. «Поиск. Списки»

27 января—27 января

5

Этап 5

Лекция 5. «Деревья»

28 января—28 января

6

Этап 6

Лекция 6. «Хеш-таблицы»

30 января—30 января

7

Этап 7

Лекция 7. «Динамическое программирование»

31 января—31 января

8

Этап 8

Лекция 8. «Алгоритмы на графах»

01 февраля—01 февраля

1

Этап 1

Лекция 1. «Введение. Исполнители. Абстракции интерфейсов. Рекурсия»

23 января—23 января

2

Этап 2

Лекция 2. «Жадные алгоритмы»

24 января—24 января

3

Этап 3

Лекция 3. «Сортировки»

26 января—26 января

4

Этап 4

Лекция 4. «Поиск. Списки»

27 января—27 января

5

Этап 5

Лекция 5. «Деревья»

28 января—28 января

6

Этап 6

Лекция 6. «Хеш-таблицы»

30 января—30 января

7

Этап 7

Лекция 7. «Динамическое программирование»

31 января—31 января

8

Этап 8

Лекция 8. «Алгоритмы на графах»

01 февраля—01 февраля

19 января 2017 31 января 2017
Цель завершена 31 января 2017
Образование

Лекции Техносферы. Подготовительный курс «Алгоритмы и структуры данных»

Цель этого курса — познакомить слушателей с основными алгоритмами, применяемыми для разработки программного обеспечения. Вы научитесь выбирать подходящие структуры данных и алгоритмы для реализации возникающих задач, и узнаете, как использовать языки С/С++ для реализации алгоритмов.

 Критерий завершения

Просмотр всех лекций и создание конспекта.

 Личные ресурсы

время

  1. Лекция 1. «Введение. Исполнители. Абстракции интерфейсов. Рекурсия»

    На первой лекции вспомним основы алгоритмов и посмотрим, как их можно использовать на практике. Поговорим о свойствах алгоритмов, исполнителях, нотациях, параметрах и классах сложности. Разберем неполиномиальную задачу (сколько поместится предметов в рюкзак). Кроме того, поговорим об абстракциях (массив, стек, множество) и рекурсии (основная теорема).

  2. Лекция 2. «Жадные алгоритмы»

    Лекция посвящена разным алгоритмам нахождения оптимальных (или близких к оптимальным) решений для самых разнообразных задач. Посмотрим на приближенное решение задачи нахождения оптимальных значений. Разберем абстракцию строки символов, префиксную функцию, динамические структуры данных.

  3. Лекция 3. «Сортировки»

    Сведения про разные сортировки и около сортировочную деятельность. Будут рассмотрены несколько технологий сортировок: сравнением, быстрая, с использованием свойств элементов, внешняя и другие. Также дается сравнение сортировок, когда и какой метод нужно применять.

  4. Лекция 4. «Поиск. Списки»

    Занимаемся поиском, работой с динамическими структурами данных, работой со списками и деревьями. Проводим сравнительный анализ методов поиска: простой последовательный поиск, распределяющий поиск, поиск с сужением зоны. Кроме того, поговорим о структуре данных «список», который тоже используется для поиска, и структуре данных «дерево», который считается обобщением «списка».

  5. Лекция 5. «Деревья»

    Продолжение темы «деревьев», затронутой еще на второй лекции. Рассматриваются две абстракции (множество и отображение), от них перейдем к сбалансированным деревьям поиска, красно-черным деревьям (двоичное дерево поиска), после чего коснемся интерфейса абстракции приоритетной очереди (основанной на деревьях).

  6. Лекция 6. «Хеш-таблицы»

    Как производить внешний поиск (на внешних носителях) с использованием B-деревьев, что такое обобщенный быстрый поиск, хеш-функции, разные виды хеш-таблиц. Также вы узнаете об еще одном виде поиска, который хорошо подходит к параллельным алгоритмам — списки с пропусками. Напоследок рассматривается пример решения задачи, которая требует нескольких разных структур данных.

  7. Лекция 7. «Динамическое программирование»

    Тут мы поговорим о способах решения больших задач, которые сами по себе делятся на подзадачи. Узнаете, как с помощью структур данных можно решать своеобразные задачи (о количестве маршрутов, о возрастающей подпоследовательности наибольшей длины), метод решения которых мы попробуем обобщить. Пойдет разбор этапов решения задачи методом динамического программирования.

  8. Лекция 8. «Алгоритмы на графах»

    Последняя лекция, в которой будут разные виды представления граф, понятие релаксации, несколько режимов поиска (BFS, DFS), топологическая сортировка, поиск остовных деревьев в графе, алгоритм Дейкстры (его связь с жадными алгоритмами) и алгоритм Флойда-Уоршалла (и его связь с динамическим программированием).

  • 1330
  • 19 января 2017, 08:55
Регистрация

Регистрация

Уже зарегистрированы?
Быстрая регистрация через соцсети
Вход на сайт

Входите.
Открыто.

Еще не зарегистрированы?
 
Войти через соцсети
Забыли пароль?