Лекции:

Дата Темы Файлы Задание
Семестр 2
11.02.2023 Повторение. Классы Студенты I: исключение
16.02.2023 Волшебные методы классов Студенты II: расписание
25.02.2023 Методы для арифметических операций Матрицы
02.03.2023 Наследование классов Студенты III: бакалавры и магистры
09.03.2023 Односвязный список Реализация методов класса LinkedList:
поиск петель, удаление повторов, сортировка
16.03.2023 Двусвязный список Реализация методов класса DoublyLinkedList:
удаление элементов с поддержкой краевых случаев
23.03.2023 Стек. Очередь. Очередь с приоритетом Реализация стека и очереди
30.03.2023 Графы Реализация методов удаления узла для обеих версий класса Graph
06.04.2023 Поиск пути по графу. Взвешенные графы.
Цепи Маркова
duel.txt Реализация поиска в глубину и в ширину для класса Graph (с матрицами смежности)
20-27.04.2023 Деревья
Дерево бинарного поиска
Реализация метода для визуализации дерева
04.05.2023 Перцептрон N/A
11.05.2023 Алгоритм кластеризации k-means N/A

Задания для выполнения в классе:

Дата Темы Файлы Ответы
16.02.2023 Изменяемые объекты. Чтение файлов cta0001_22k.wav
cta0001_22k.seg_B2
cta0001_44k.wav
TBA
02.03.2023 Работа с текстом. Регулярные выражения ans_0203.ipynb
09.03.2023 f-строки. Работа с числами ans_0903.ipynb
16.03.2023 Регулярные выражения ans_1603.ipynb
23.03.2023
potato
potato
Рекурсия
flood_fill_test.txt ans_2303.ipynb
30.03.2023 Расстояние Хэмминга
Wordle
wordlist.txt
answerlist.txt
TBA
06-27.04.2023 Игры со словами words_alpha.txt
lexicon_lemmatized.txt
TBA
04-11.05.2023 Алгоритмы сортировки TBA
18.05.2023 matplotlib.pyplot cta_seg_B2.zip TBA

Полезные ссылки:

Документация к языку Python

Основы программирования на Python (курс НИУ ВШЭ)

Google's Python Class

LeetCode: банк задач по программированию

Основы программирования (второй курс)

Программирование лингвистических задач (четвёртый курс)

Среда разработки PyCharm

Среда разработки Visual Studio Code

Среда разработки для начинающих Thonny

Jupyter Notebook

Список дополнительной литературы:

  1. Марк Лутц, Программирование на Python, 4-е изд., в 2-х т. Символ-Плюс, 2011
  2. Марк Лутц, Изучаем Python, 4-е изд., Символ-Плюс, 2011
  3. Б. Керниган, Р. Пайк, Практика программирования, Невский диалект, 2001