# Название лабораторной работы Описание работы Домашняя работа
1 Распределительный контест

Распределительный контест

2 Основы shell и Python3

Работа в интерпретаторе Python 3.

3 Обработка последовательностей чисел

Ссылки на контест.

4 Cистемы счисления

Системы счисления.

5 Алгоритмы полного перебора, целочисленная арифметика

Функции. Алгоритмы полного перебора. Делители.

6 Массивы

Массивы. Контест на массивы.

7 Контрольная работа №1

Ссылка на контрольную

8 Сортировки

Алгоритмы сортировок

9 Рекурсия

Контест, синтаксис

10 Быстрые сортировки

Алгоритмы быстрых сортировок

11 Бинарный поиск

Контест по бинарному поиску

12 Одномерное динамическое программирование

Контест по одномерному динамическому программированию

13 Строки

Строки в языке Python. Алгоритмы над строками

14 Двумерное динамическое программирование

Ссылки на контесты

15 Контрольная работа №2

Семестровая контрольная работа

16 Вопросы к устному зачёту

Вопросы билетов устного зачёта, особенности процедуры сдачи.

17 Работа с ошибками в Python

Рассматриваются некоторые типы ошибок и работа с Traceback. Ссылка на контест 1.

18 Хеширование и хеш-таблицы

Ссылка на контест

19 Множества и словари в Python

Множества, словари и задачи

20 Стэк, очередь, куча

Ссылка на контест

21 Работа с файлами, построение графиков

Файлы, time, numpy, matplotlib, задачи

22 Контрольная работа №1

Контрольная работа по пройденным темам

23 Графы. Обход в глубину

Контест, лекция

24 Графы. Обход в ширину

Контест

25 Графы. Путь наименьшего веса

Контест

26 Графы. Остовные деревья

Ссылки на контесты

27 Теория игр

Ссылки на контесты

28 Двоичные деревья поиска

Ссылки на контесты

29 Контрольная работа №2

Семестровая контрольная работа

30 Вопросы к устному зачёту

Вопросы билетов устного зачёта, особенности процедуры сдачи.