Мы используем cookie для стабильной работы сервиса. Подробнее

Алгоритмы на Python

ФорматОнлайн
Длительность4-5
Объём13 занятий
По окончанииShultais Education
О курсе

Подробнее

Серьезный курс для будущих профессионалов. На курсе мы в деталях рассматриваем классические алгоритмы и структуры данных с примерами на языке Python. Погружаемся в мир программирования и учимся писать эффективный и быстрый код. ✅ Образовательная лицензия: Л035-01236-39/01006802 💪 Присоединяйтесь к нашему официальному телегарам-каналу – месту вашей силы и развития. Схемы, графики и анимации в каждом уроке Более 2000 слайдов и 100 анимаций для подробного объяснения работы каждого алгоритма: Разбор и анализ самых популярных и востребованных алгоритмов: Поддержка Отвечаем на все вопросы в течение 24 часов. Вопросы вы можете задавать прямо на Stepik под каждым уроком и заданием.
Требования

Что нужно для старта

  • Хорошее знание Python, включая ООП.
Результат

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

  • Определять сложность алгоритмов.
  • Оптимизировать алгоритмы и код.
  • Выбирать оптимальные структуры под бизнес-задачи.
  • Проектировать рекурсивные алгоритмы на Python.
  • Оптимизировать рекурсивные функции.
  • Строить и обходить деревья и графы.
  • Сортировать массивы и связные списки.
  • Быстро искать данные в массивах, деревьях и тексте.
  • Искать и генерировать большие простые числа.
  • Более эффективно использовать Python.
  • Работать с хэш-таблицами, словарями и ассоциативными массивами.
  • Шифровать и сжимать данные.
  • Генерировать и обмениваться ключами шифрования.
  • Сортировать данные, в том числе по нескольким критериям.
  • Использовать комбинаторые алгоритмы и функции.
  • Перебирать и оптимизировать деревья.
Аудитория

Для кого этот курс

  • Программистам на Python
  • Научитесь писать эффективные и быстрые алгоритмы на Питоне. Значительно расширите горизонты своих навыков. Сможете лучше подготовиться к собеседованиям в серьезные компании.
  • Программистам самоучкам
  • Восполните недостающие навыки по алгоритмизации. Научитесь писать быстрый код и использовать эффективные структуры данных для решения бизнес-задач.
Содержание

Программа курса

13 занятий
ТемаЧто внутри
01Введение в алгоритмы

- Введение в курс
- Понятие алгоритма
- Сложные проценты
- Линейный поиск
- Сортировка выбором
- Сложность алгоритмов
- Сложность алгоритмов, часть 2
- Задания

02Структуры данных

- Связные списки
- Добавление вставка и удаление ячеек
- Двунаправленные связные списки
- Сортировка связных списков
- Массивы
- Многомерные массивы
- Треугольные массивы
- Стек
- Очередь
- Очередь с приоритетом и дек
- Задания на связные списки
- Задания на массивы
- Задания на стеки
- Задания на очереди

03Сортировка

- Общее о сортировках
- Пузырьковая сортировка
- Сортировка вставками
- Пирамидальная сортировка (кучей)
- Пирамидальная сортировка, часть 2
- Быстрая сортировка
- Сложность быстрой сортировки
- Быстрая сортировка на месте
- Сортировка слиянием
- Сортировка подсчетом
- Блочная сортировка
- Устойчивость сортировок
- Сортировка по нескольким полям
- Задания

04Поиск

- Бинарный поиск
- Интерполяционный поиск
- Задания

05Численные алгоритмы

- Генерирование случайных чисел
- Наибольший общий делитель
- Возведение в степень
- Решето Эратосфена
- Проверка на простоту
- Поиск простых множителей
- Численные методы
- Задания

06Хэширование

- Основы хэш-таблиц
- Прямое связывание
- Открытая адресация
- Удаление элементов из хэш-таблицы
- Квадратичное пробирование
- Квадратичное пробирование, часть 2
- Двойное хэширование
- Упорядоченное хэширование
- Фильтры Блума
- Задания

07Рекурсия

- Понимание рекурсии
- Понимание рекурсии, часть 2
- Факториал
- Числа Фибоначчи
- Ханойская башня
- Задача о 8 ферзях
- Оптимизация задачи о восьми ферзях
- Сочетания
- Размещения
- Оптимизация рекурсии
- Кривая Коха
- Задания

08Деревья

- Введение в деревья
- Обход деревьев
- Обход деревьев в ширину
- Добавление элементов в бинарные деревья поиска
- Поиск по двоичному дереву
- Удаление вершин из двоичного дерева
- Прошитые бинарные деревья
- Деревья квадрантов
- АВЛ-деревья
- 2-3 деревья
- B-деревья
- Красно-черные деревья
- Задания

09Деревья принятия решения

- Введение в деревья принятия решений
- Метод полного перебора
- Метод ветвей и границ
- Случайный поиск
- Локальный поиск
- Имитация отжига
- Поиск максимума
- Сравнение эвристических алгоритмов
- Энтропия
- Энтропия и деревья принятия решений
- Алгоритм ID3
- Задания

10Алгоритмы на графах

- Введение в графы
- Способы представления графов
- Рекурсивный обход в глубину
- Обход в глубину с помощью стека
- Обход в ширину
- Топологическая сортировка
- Топологическая сортировка на практике
- Поиск циклов
- Поиск критического пути
- Критические пути на практике
- Поиск компонент связности
- Поиск компонент сильной связности
- Поиск мостов
- Остовные деревья
- Минимальное остовное дерево
- Алгоритм Прима
- Алгоритм Краскала
- Алгоритм Дейскстры
- Алгоритм Беллмана - Форда
- Кратчайшие пути на практике
- Задания

11Строковые алгоритмы

- Простейший поиск подстроки
- Суффиксы, префиксы, грани
- Префикс-функция
- Алгоритм Кнута - Морриса - Пратта
- Алгоритм Бойера - Мура
- Алгоритм Бойера - Мура на практике
- Суффиксные деревья
- Поиск по суффиксному дереву
- Построение суффиксного дерева
- Скорость алгоритмов поиска текста
- Задания

12Крипотография

- Табличная перестановка
- Перестановка столбцов
- Шифры Цезаря и Виженера
- Метод одноразовых блокнотов
- Блочные шифры и SP-сети
- Обмен ключам по методу Диффи-Хеллмана
- Шифрование с открытым ключом
- Криптосистема RSA
- Гибридные криптосистемы
- Хэширование
- Применение хэширования в криптографии
- Луковая маршрутизация
- Задания

13Сжатие

- Введение в сжатие
- Кодирование длин серий
- Код Хаффмана
- Сжатие Лемпеля - Зива - Велча
- Сжатие с потерями
- Задания

01Введение в алгоритмы

- Введение в курс
- Понятие алгоритма
- Сложные проценты
- Линейный поиск
- Сортировка выбором
- Сложность алгоритмов
- Сложность алгоритмов, часть 2
- Задания

02Структуры данных

- Связные списки
- Добавление вставка и удаление ячеек
- Двунаправленные связные списки
- Сортировка связных списков
- Массивы
- Многомерные массивы
- Треугольные массивы
- Стек
- Очередь
- Очередь с приоритетом и дек
- Задания на связные списки
- Задания на массивы
- Задания на стеки
- Задания на очереди

03Сортировка

- Общее о сортировках
- Пузырьковая сортировка
- Сортировка вставками
- Пирамидальная сортировка (кучей)
- Пирамидальная сортировка, часть 2
- Быстрая сортировка
- Сложность быстрой сортировки
- Быстрая сортировка на месте
- Сортировка слиянием
- Сортировка подсчетом
- Блочная сортировка
- Устойчивость сортировок
- Сортировка по нескольким полям
- Задания

04Поиск

- Бинарный поиск
- Интерполяционный поиск
- Задания

05Численные алгоритмы

- Генерирование случайных чисел
- Наибольший общий делитель
- Возведение в степень
- Решето Эратосфена
- Проверка на простоту
- Поиск простых множителей
- Численные методы
- Задания

06Хэширование

- Основы хэш-таблиц
- Прямое связывание
- Открытая адресация
- Удаление элементов из хэш-таблицы
- Квадратичное пробирование
- Квадратичное пробирование, часть 2
- Двойное хэширование
- Упорядоченное хэширование
- Фильтры Блума
- Задания

07Рекурсия

- Понимание рекурсии
- Понимание рекурсии, часть 2
- Факториал
- Числа Фибоначчи
- Ханойская башня
- Задача о 8 ферзях
- Оптимизация задачи о восьми ферзях
- Сочетания
- Размещения
- Оптимизация рекурсии
- Кривая Коха
- Задания

08Деревья

- Введение в деревья
- Обход деревьев
- Обход деревьев в ширину
- Добавление элементов в бинарные деревья поиска
- Поиск по двоичному дереву
- Удаление вершин из двоичного дерева
- Прошитые бинарные деревья
- Деревья квадрантов
- АВЛ-деревья
- 2-3 деревья
- B-деревья
- Красно-черные деревья
- Задания

09Деревья принятия решения

- Введение в деревья принятия решений
- Метод полного перебора
- Метод ветвей и границ
- Случайный поиск
- Локальный поиск
- Имитация отжига
- Поиск максимума
- Сравнение эвристических алгоритмов
- Энтропия
- Энтропия и деревья принятия решений
- Алгоритм ID3
- Задания

10Алгоритмы на графах

- Введение в графы
- Способы представления графов
- Рекурсивный обход в глубину
- Обход в глубину с помощью стека
- Обход в ширину
- Топологическая сортировка
- Топологическая сортировка на практике
- Поиск циклов
- Поиск критического пути
- Критические пути на практике
- Поиск компонент связности
- Поиск компонент сильной связности
- Поиск мостов
- Остовные деревья
- Минимальное остовное дерево
- Алгоритм Прима
- Алгоритм Краскала
- Алгоритм Дейскстры
- Алгоритм Беллмана - Форда
- Кратчайшие пути на практике
- Задания

11Строковые алгоритмы

- Простейший поиск подстроки
- Суффиксы, префиксы, грани
- Префикс-функция
- Алгоритм Кнута - Морриса - Пратта
- Алгоритм Бойера - Мура
- Алгоритм Бойера - Мура на практике
- Суффиксные деревья
- Поиск по суффиксному дереву
- Построение суффиксного дерева
- Скорость алгоритмов поиска текста
- Задания

12Крипотография

- Табличная перестановка
- Перестановка столбцов
- Шифры Цезаря и Виженера
- Метод одноразовых блокнотов
- Блочные шифры и SP-сети
- Обмен ключам по методу Диффи-Хеллмана
- Шифрование с открытым ключом
- Криптосистема RSA
- Гибридные криптосистемы
- Хэширование
- Применение хэширования в криптографии
- Луковая маршрутизация
- Задания

13Сжатие

- Введение в сжатие
- Кодирование длин серий
- Код Хаффмана
- Сжатие Лемпеля - Зива - Велча
- Сжатие с потерями
- Задания

Документ после выпуска

Shultais Education

Организатор

Автор курса

StepikStepik
Stepik — образовательная платформа и конструктор онлайн-курсов. Мы разрабатываем алгоритмы адаптивного обучения, сотрудничаем с авторами MOOC, помогаем в проведении олимпиад и программ переподготовки. Наша цель — сделать образование открытым и удобным. Stepik — широко известная российская образовательная платформа, основанная в 2013 году. На Stepik зарегистрировано более миллиона пользователей из России и стран СНГ. В настоящее время на Stepik представлены несколько тысяч учебных курсов на самые разные темы.
Подробнее об авторе
Мнения учеников

Отзывы о курсе

Оставьте отзыв

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

Напишите ваш коментарий, не менее 30 символов

Нажимая кнопку, вы даете согласие на обработку персональных данных

Оставьте заявку

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

Комментарий ...

Нажимая кнопку, вы даете согласие на обработку персональных данных

Информация обновлена 3 сентября 2026 г.

Продолжить выбор

Похожие курсы

Python-разработчик
−50%8 сентября
Python-разработчик

Освоите Python с нуля до junior и найдете свою первую работу в IT. Изучите функционал языка, работу с данными, визуализацией и библиотеками 3 месяца обучения и 187+ часов практики…

Онлайн
Практические занятия
130 000 ₽−50%
65 000 ₽от 3 611 ₽/мес на 18 мес.
Питон: начальный курс.
−15%
Питон: начальный курс.

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

Онлайн
68 040 ₽−15%
57 830 ₽
Годовой курс ЕГЭ по информатике. Курс ЕГЭ по информатике с Сергеем Горбачёвым (10-11 класс)
−11%
Годовой курс ЕГЭ по информатике. Курс ЕГЭ по информатике с Сергеем Горбачёвым (10-11 класс)

Системная подготовка к ЕГЭ по информатике — все темы кодификатора, Python с нуля и разбор заданий, которые чаще всего вызывают затруднения. Подходит и для старта в 10-м классе, и…

Онлайн
54 800 ₽−11%
48 770 ₽
Годовой курс ОГЭ по информатике. Курс ОГЭ по информатике с Сергеем Горбачёвым (9 класс)
−11%
Годовой курс ОГЭ по информатике. Курс ОГЭ по информатике с Сергеем Горбачёвым (9 класс)

Тебя ждут практико-ориентированные вебинары с преподавателем. На каждом занятии вы шаг за шагом разберёте и решите все номера, а также прототипы актуального экзамена. Ты освоишь P…

Онлайн
49 800 ₽−11%
44 320 ₽
Python разработчик
6,5 месяца
Python разработчик

Веб-разработка на Python: Django, Django REST Framework, Flask. Работа с базами данных, ORM, создание API. Асинхронное программирование, FastAPI. Основы DevOps, контейнеризация, р…

ОнлайнНачальный
110 000 ₽от 6 111 ₽/мес на 18 мес.
Создание игр и приложений: Старт в программировании (10-12) — 32 занятия
−27%1 месяц
Создание игр и приложений: Старт в программировании (10-12) — 32 занятия

Конструкторы + первые шаги в коде: делаем 2D-игры в Construct и простые мобильные приложения в App Inventor. Итог — свои мини-игры/приложения и базовое алгоритмическое мышление.

Онлайн32 занятий
136 000 ₽−27%
99 200 ₽от 7 350 ₽/мес
Начать без затрат

Бесплатные курсы

"Поколение Python": курс для начинающих
Бесплатно
"Поколение Python": курс для начинающих

"Поколение Python: курс для начинающих" знакомит с основными типами данных, конструкциями и принципами структурного программирования языка Python. Целевая аудитория – школьники, с…

Онлайн16 занятий
Бесплатно
Claude Code с нуля до реальных задач
Бесплатно1 месяц
Claude Code с нуля до реальных задач

Вы разовьёте аналитическое мышление, научитесь искать уязвимости и обеспечивать безопасность IT-систем. Освоите востребованную профессию даже с нулевым опытом в IT. Программа курс…

Онлайн
Бесплатноот 11 647 ₽/мес
Структуры данных предметной области
Бесплатно
Структуры данных предметной области

Основные задачи дисциплины: − Дальнейшее развитие и углубление навыков алгоритмизации и программирования при решении прикладных задач предметной области. − Знакомство с реализацие…

Онлайн5 занятий
Бесплатно