Алгоритмы и структуры данных на Python

Базовые алгоритмы программирования и классические структуры данных как основа качественного кода

Студенты углубят базу программирования на языке Python и «прокачают» алгоритмическое мышление. Курс учит понимать фундаментальные алгоритмы и использовать их для решения практических задач. Знакомит с методами анализа данных на Python и всеми необходимыми библиотеками.

Чему Вы научитесь

  • Излагать идеи в виде блок-схем, читать готовые схемы и реализовывать программы на их основе.
  • Закрепить навыки реализации простейших алгоритмов с ветвлениями, циклами, а также рекурсивных алгоритмов.
  • Познакомиться с классическими структурами данных, которые применяются в программировании, и уметь использовать их реализации на языке Python.
  • Освоить модуль Collections и научиться работать с популярными структурами данных модуля.
  • Освоить классические алгоритмы, которые лежат в основе современных проектов любой степени сложности.
  • Узнать об алгоритмической сложности алгоритмов и научиться оценивать сложность вашего алгоритма при помощи встроенных в Python инструментов.
  • Познакомиться с внутренним устройством интерпретатора Python и понять структуру объектов внутри языка.
  • Научиться работать с деревьями и хеш-таблицами. Писать алгоритмы для работы с ними.

Что Вы получите

Видеозаписи всех онлайн-занятий
Методички и практические задания
Общение с одногруппниками
Сертификат об окончании обучения

Средние оценки

4.9 / 5
Программа
5.0 / 5
Преподаватель

Преподаватели

  • 1
    Урок 1. Введение в алгоритмизацию и реализация простых алгоритмов на Python
    Введение в алгоритмизацию. Решение практических задач.
  • 2
    Урок 2. Циклы. Рекурсия. Функции.
    Циклы – многократное повторение однотипных действий. Рекурсивный перебор. Алгоритм Евклида. Решето Эратосфена – алгоритм определения простых чисел. Использование функций.
  • 3
    Урок 3. Массивы. Кортежи. Множества. Списки.
    Понятие массива, кортежа, множества и списков. Обработка последовательностей, одномерных и двумерных массивов. Работа с ассоциативными массивами (таблицами данных). Двоичный (бинарный) поиск элемента в массиве.
  • 4
    Урок 4. Эмпирическая оценка алгоритмов на Python
    Измерения времени работы с использованием timeit. Профайлер
  • 5
    Урок 5. Коллекции. Список. Очередь. Словарь.
    Понятие коллекции. Основные типы коллекции. Стандартные методы работы с коллекциями. Примеры применения коллекций для решения практических задач.
  • 6
    Урок 6. Работа с динамической памятью
    Представление в памяти коллекций. Управление памятью.
  • 7
    Урок 7. Алгоритмы сортировки
    Сортировка пузырьком. Быстрая сортировка (Quick sort). Сортировка Шелла. Сортировка сложных структур с использованием ключа. Обратная сортировка. Сортировка с использованием функции attrgetter.
  • 8
    Урок 8. Деревья. Хеш-функция
    Двоичные деревья поиска. Проход по дереву. Хеш-функция
  • Нажимая на кнопку "Добавить в корзину", Вы принимаете условия договора оферты.

После обучения мы предлагаем всем выпускникам оценить программу курса и преподавателя, а также при желании оставить отзыв.
Все отзывы и оценки мы публикуем без изменений.