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

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

ФорматОнлайн
Длительность10 часов в неделю
Объём24 занятий
По окончанииРешив 70% всех задач курса, вы получите сертификат от платформы Stepik и школы BEEGEEK, подписанный авторами курса.
О курсе

Подробнее

🏆 Курс победитель в категории "Лучший педагогический дизайн" по версии Stepik Awards 2025! ✅ Образовательная лицензия № Л035-01233-15/01102936. Присоединяйтесь к официальному телеграм-каналу "Поколение Python" по ссылке. "Поколение Python": алгоритмы и структуры данных для начинающих: продолжает линейку курсов "Поколение Python" адресован знающим базовые конструкции и типы данных языка Python знакомит с базовыми алгоритмами и структурами данных В курсе рассматриваются такие темы, как анализ алгоритмов, алгоритмы поиска и сортировки, методы оптимизации, задачи с матрицами, системы счисления, математические алгоритмы и структуры данных и многое другое. Мы тщательно отобрали задачи для этого курса, чтобы помочь вам разобраться с основными алгоритмическими идеями. Важная составляющая курса — три тестовых алгоритмических собеседования. Они помогут вам оценить свой уровень подготовки и потренироваться в решении задач разной сложности в условиях, приближенных к реальным. Курс разбит на 24 модуля с теоретическими и практическими материалами, а также заданиями. Модули курса: 🐍 О курсе 🧠 Функции, многочлены, ФСУ и логарифмы 👨🏻‍💻 Закрепление материала 🔬 Понятие и анализ алгоритмов  👨🏻‍💻 Закрепление материала 🔎 Алгоритмы поиска 👨🏻‍💻 Закрепление материала 📊 Алгоритмы простых сортировок 👨🏻‍💻 Закрепление материала 🔀 Методы оптимизации решения задач 👨🏻‍💻 Закрепление материала 🌀 Задачи на обработку матриц 👨🏻‍💻 Закрепление материала 🔢 Системы счисления 👨🏻‍💻 Закрепление материала 🧮 Математические алгоритмы 👨🏻‍💻 Закрепление материала 🛠 Структуры данных 👨🏻‍💻 Закрепление материала ⏳ Алгоритмическое собеседование в Google ⏳Алгоритмическое собеседование в Microsoft ⏳Алгоритмическое собеседование в Поколение 📚 Полезные ресурсы для изучения алгоритмов и структур данных 🥳 Заключение Решения проверяет автоматическая система, поэтому обратную связь вы получите очень быстро. Если у вас возникнут проблемы, команда курса даст советы и подсказки.
Требования

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

  • Для лучшего усвоения материала курса необходимо знать язык Python на базовом уровне. Крайне рекомендуем пройти курсы:
  • "Поколение Python": курс для начинающих
  • "Поколение Python": курс для продвинутых
  • "Поколение Python": курс для профессионалов
  • В курсе будут изучаться структуры данных, а потому будет крайне полезно знать основы ООП. Рекомендуем пройти следующий курс:
  • "Поколение Python": ООП
Результат

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

  • изучите основные математические концепции, необходимые для освоения алгоритмов
  • изучите понятие алгоритма и его свойства
  • изучите нотацию О-большое
  • научитесь оценивать эффективность алгоритмов
  • узнаете про плюсы и минусы асимптотического анализа алгоритмов
  • изучите сложность встроенных в Python функций и структур данных
  • изучите алгоритмы поиска: линейного, бинарного, экспоненциального, а также поиска прыжками
  • научитесь находить минимумы и максимумы
  • изучите алгоритмы базовых сортировок
  • научитесь оптимизировать решения задач с помощью префиксных сумм, метода двух указателей, метода "встреча посередине" и метода скользящего окна
  • научитесь решать задачи на обработку и заполнение матриц
  • изучите понятие систем счисления
  • изучите битовые операции
  • научитесь работать с римской системой счисления
  • изучите понятие простого и составного числа
  • научитесь находить НОД и НОК чисел
  • научитесь вычислять факториал числа
  • научитесь вычислять числа Фибоначчи
  • изучите структуры данных: массив, связный список, стек, очередь, дэк, хэш-таблица
  • узнаете о том, как проходить и готовиться к алгоритмическому собеседованию
  • пройдете три тестовых алгоритмических собеседования
Аудитория

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

  • Курс подходит как начинающим, так и продвинутым, которые хотят улучшить свои знания по алгоритмам и структурам данных и прорешать много задач.
Содержание

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

24 занятия
№ТемаЧто внутри
01🐍 О курсе

- Зачем изучать алгоритмы и структуры данных?
- О курсе
- О задачах на программирование
- О квесте
- Достижения курсов Поколения 🏆

02🧠 Функции, многочлены, ФСУ и логарифмы

- Понятие функции
- Функции в математике
- График функции
- Линейная функция
- Линейные уравнения и их системы
- Квадратичная функция
- Многочлены
- Формулы сокращенного умножения
- Логарифмы
- Свойства логарифмов
- Количество цифр в числе
- Логарифмы в Python
- Логарифмическая и показательная функции

03👨🏻‍💻 Закрепление материала

- Задачи

04🔬 Понятие и анализ алгоритмов

- Понятие алгоритма
- Основы решения алгоритмических задач. Часть 1
- Основы решения алгоритмических задач. Часть 2
- Оценка эффективности алгоритмов. Часть 1
- Оценка эффективности алгоритмов. Часть 2
- Нотация О-большое. Часть 1
- Нотация О-большое. Часть 2
- Нотация О-большое. Часть 3
- Нотация О-большое. Часть 4
- Асимптотическая временная сложность. Часть 1
- Асимптотическая временная сложность. Часть 2
- Асимптотическая временная сложность. Часть 3
- Асимптотическая временная сложность. Часть 4
- Асимптотическая временная сложность. Часть 5
- Асимптотическая пространственная сложность
- Плюсы и минусы асимптотического анализа
- Сложность встроенных функций
- Сложность встроенных типов данных. Часть 1
- Сложность встроенных типов данных. Часть 2
- Решение задач 🚀

05👨🏻‍💻 Закрепление материала

- Задачи. Часть 1
- Задачи. Часть 2
- Задачи. Часть 3

06🔎 Алгоритмы поиска

- Линейный поиск. Часть 1
- Линейный поиск. Часть 2
- Поиск минимумов и максимумов. Часть 1
- Поиск минимумов и максимумов. Часть 2
- Поиск минимумов и максимумов. Часть 3
- Бинарный поиск. Часть 1
- Бинарный поиск. Часть 2
- Экспоненциальный бинарный поиск
- Вещественный бинарный поиск
- Поиск прыжками

07👨🏻‍💻 Закрепление материала

- Задачи. Часть 1
- Задачи. Часть 2

08📊 Алгоритмы простых сортировок

- Сортировка выбором (Selection Sort)
- Сортировка пузырьком (Bubble Sort)
- Сортировка вставками (Insertion Sort)
- Сортировка подсчетом (Counting Sort)
- Применение сортировки для решения задач

09👨🏻‍💻 Закрепление материала

- Задачи. Часть 1
- Задачи. Часть 2

10🔀 Методы оптимизации решения задач

- Префиксные суммы
- Встреча посередине (Meet in the middle)
- Метод двух указателей. Часть 1
- Метод двух указателей. Часть 2
- Метод скользящего окна

11👨🏻‍💻 Закрепление материала

- Задачи

12🌀 Задачи на обработку матриц

- Обработка матриц
- Заполнение матриц
- Решение задач 🚀

13👨🏻‍💻 Закрепление материала

- Задачи

14🔢 Системы счисления

- Введение в системы счисления
- Десятичная система счисления
- Перевод чисел в десятичную систему счисления
- Перевод чисел из десятичной системы счисления
- Двоичная, восьмеричная и шестнадцатеричная системы счисления
- Функции bin(), oct(), hex() и int()
- Битовые операции. Часть 1
- Битовые операции. Часть 2
- Римская система счисления

15👨🏻‍💻 Закрепление материала

- Задачи. Часть 1
- Задачи. Часть 2

16🧮 Математические алгоритмы

- Делимость, ее свойства и признаки
- Простые и составные числа. Часть 1
- Простые и составные числа. Часть 2
- Наибольший общий делитель (НОД)
- Наименьшее общее кратное (НОК)
- Алгоритм Евклида
- Арифметическая прогрессия. Часть 1
- Арифметическая прогрессия. Часть 2
- Геометрическая прогрессия
- Факториал
- Числа Фибоначчи

17👨🏻‍💻 Закрепление материала

- Задачи
- Задачи

18🛠 Структуры данных

- Односвязный список. Часть 1
- Односвязный список. Часть 2
- Двусвязный список
- Кольцевой список
- Стек. Часть 1
- Стек. Часть 2
- Инфиксная, префиксная и постфиксная нотации. Часть 1
- Инфиксная, префиксная и постфиксная нотации. Часть 2
- Очередь
- Дек
- Тип данных deque. Часть 1
- Тип данных deque. Часть 2
- Тип данных deque. Часть 3
- Хеш-таблица. Часть 1
- Хеш-таблица. Часть 2
- Хеш-таблица. Часть 3

19👨🏻‍💻 Закрепление материала

- Задачи
- Об алгоритмических собеседованиях

20⏳ Алгоритмическое собеседование в Google

- Задачи

21⏳ Алгоритмическое собеседование в Microsoft

- Задачи

22⏳ Алгоритмическое собеседование в Поколение

- Задачи

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

- Полезные сайты
- Полезные книги

24🥳 Заключение

- Заключительный урок
- Оглавление

01🐍 О курсе

- Зачем изучать алгоритмы и структуры данных?
- О курсе
- О задачах на программирование
- О квесте
- Достижения курсов Поколения 🏆

02🧠 Функции, многочлены, ФСУ и логарифмы

- Понятие функции
- Функции в математике
- График функции
- Линейная функция
- Линейные уравнения и их системы
- Квадратичная функция
- Многочлены
- Формулы сокращенного умножения
- Логарифмы
- Свойства логарифмов
- Количество цифр в числе
- Логарифмы в Python
- Логарифмическая и показательная функции

03👨🏻‍💻 Закрепление материала

- Задачи

04🔬 Понятие и анализ алгоритмов

- Понятие алгоритма
- Основы решения алгоритмических задач. Часть 1
- Основы решения алгоритмических задач. Часть 2
- Оценка эффективности алгоритмов. Часть 1
- Оценка эффективности алгоритмов. Часть 2
- Нотация О-большое. Часть 1
- Нотация О-большое. Часть 2
- Нотация О-большое. Часть 3
- Нотация О-большое. Часть 4
- Асимптотическая временная сложность. Часть 1
- Асимптотическая временная сложность. Часть 2
- Асимптотическая временная сложность. Часть 3
- Асимптотическая временная сложность. Часть 4
- Асимптотическая временная сложность. Часть 5
- Асимптотическая пространственная сложность
- Плюсы и минусы асимптотического анализа
- Сложность встроенных функций
- Сложность встроенных типов данных. Часть 1
- Сложность встроенных типов данных. Часть 2
- Решение задач 🚀

05👨🏻‍💻 Закрепление материала

- Задачи. Часть 1
- Задачи. Часть 2
- Задачи. Часть 3

06🔎 Алгоритмы поиска

- Линейный поиск. Часть 1
- Линейный поиск. Часть 2
- Поиск минимумов и максимумов. Часть 1
- Поиск минимумов и максимумов. Часть 2
- Поиск минимумов и максимумов. Часть 3
- Бинарный поиск. Часть 1
- Бинарный поиск. Часть 2
- Экспоненциальный бинарный поиск
- Вещественный бинарный поиск
- Поиск прыжками

07👨🏻‍💻 Закрепление материала

- Задачи. Часть 1
- Задачи. Часть 2

08📊 Алгоритмы простых сортировок

- Сортировка выбором (Selection Sort)
- Сортировка пузырьком (Bubble Sort)
- Сортировка вставками (Insertion Sort)
- Сортировка подсчетом (Counting Sort)
- Применение сортировки для решения задач

09👨🏻‍💻 Закрепление материала

- Задачи. Часть 1
- Задачи. Часть 2

10🔀 Методы оптимизации решения задач

- Префиксные суммы
- Встреча посередине (Meet in the middle)
- Метод двух указателей. Часть 1
- Метод двух указателей. Часть 2
- Метод скользящего окна

11👨🏻‍💻 Закрепление материала

- Задачи

12🌀 Задачи на обработку матриц

- Обработка матриц
- Заполнение матриц
- Решение задач 🚀

13👨🏻‍💻 Закрепление материала

- Задачи

14🔢 Системы счисления

- Введение в системы счисления
- Десятичная система счисления
- Перевод чисел в десятичную систему счисления
- Перевод чисел из десятичной системы счисления
- Двоичная, восьмеричная и шестнадцатеричная системы счисления
- Функции bin(), oct(), hex() и int()
- Битовые операции. Часть 1
- Битовые операции. Часть 2
- Римская система счисления

15👨🏻‍💻 Закрепление материала

- Задачи. Часть 1
- Задачи. Часть 2

16🧮 Математические алгоритмы

- Делимость, ее свойства и признаки
- Простые и составные числа. Часть 1
- Простые и составные числа. Часть 2
- Наибольший общий делитель (НОД)
- Наименьшее общее кратное (НОК)
- Алгоритм Евклида
- Арифметическая прогрессия. Часть 1
- Арифметическая прогрессия. Часть 2
- Геометрическая прогрессия
- Факториал
- Числа Фибоначчи

17👨🏻‍💻 Закрепление материала

- Задачи
- Задачи

18🛠 Структуры данных

- Односвязный список. Часть 1
- Односвязный список. Часть 2
- Двусвязный список
- Кольцевой список
- Стек. Часть 1
- Стек. Часть 2
- Инфиксная, префиксная и постфиксная нотации. Часть 1
- Инфиксная, префиксная и постфиксная нотации. Часть 2
- Очередь
- Дек
- Тип данных deque. Часть 1
- Тип данных deque. Часть 2
- Тип данных deque. Часть 3
- Хеш-таблица. Часть 1
- Хеш-таблица. Часть 2
- Хеш-таблица. Часть 3

19👨🏻‍💻 Закрепление материала

- Задачи
- Об алгоритмических собеседованиях

20⏳ Алгоритмическое собеседование в Google

- Задачи

21⏳ Алгоритмическое собеседование в Microsoft

- Задачи

22⏳ Алгоритмическое собеседование в Поколение

- Задачи

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

- Полезные сайты
- Полезные книги

24🥳 Заключение

- Заключительный урок
- Оглавление

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

Решив 70% всех задач курса, вы получите сертификат от платформы Stepik и школы BEEGEEK, подписанный авторами курса.

Организатор

Автор курса

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

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

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

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

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

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

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

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

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

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

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

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

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

Bioinformatics Algorithms @UNBC
Bioinformatics Algorithms @UNBC

How do we sequence and compare genomes? How do we identify the genetic basis for disease? How do we construct an evolutionary Tree of Life for all species on Earth? When you compl…

Онлайн11 занятий
70 ₽
AI-first разработка на Python
−25%1 час
AI-first разработка на Python

Соберете и настроите свою профессиональную среду для разработки с агентами: от написания кода до ревью, автотестов и проверки безопасности.

Онлайн12 занятий
Домашние заданияИнтерактивные тренажёры+3
16 900 ₽−25%
12 600 ₽от 738 ₽/мес на 24 мес.
Python для инженеров
−50%2 месяца
Python для инженеров

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

Онлайн
57 663 ₽−50%
28 831 ₽от 9 610 ₽/мес на 3 мес.
Начать без затрат

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

Python для решения практических задач
Бесплатно
Python для решения практических задач

Научились решать простые задачи на питоне, но не можете понять, как сделать что-то полезное? Наш курс научит вас правильно гуглить! На примерах задач сбора данных (Data Scraping)…

Онлайн5 занятий
Бесплатно
Python для геймеров: базовый курс на игровых примерах
Бесплатно4 часа в неделю
Python для геймеров: базовый курс на игровых примерах

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

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

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

Онлайн17 занятий
Бесплатно
Структуры данных предметной области
Бесплатно
Структуры данных предметной области

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

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