Σ
💻 Для разработчиков

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

Сложность, массивы, хеши, рекурсия, поиск — для собеседований

Что ты создашь
📘Прочный фундамент
⚡Практика в браузере
🎯Мини-проекты
🎓Сертификат курса
📘 30 уроков⏱ 1-2 вечера🎓 Продвинутый
🎯 Цель
Освоить Алгоритмы и структуры
⚡+350XP
🏆СертификатPDF
🎓Курс пройден
Прогресс0 / 30 · 0%
Следующий шаг: Что такое Big-O?

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

01

Big-O: сложность

0 / 5 уроков
⌄
  1. 01

    Что такое Big-O?

    Нотация Big-O•Скорость роста•Худший случай⚡ +10
    ▶ Сейчас
  2. 02

    Сравниваем O(1) и O(n)

    Прямой доступ•Линейный обход•Измерение времени⚡ +10
    Открыт
  3. 03

    O(n²): вложенные циклы

    Вложенный цикл•Все пары•Квадратный рост⚡ +10
    Открыт
  4. 04

    O(log n): логарифмическая сложность

    Логарифм•Деление пополам•Двоичный поиск⚡ +10
    🔒 Pro
  5. 05

    Big-O: итоговая таблица

    Сравнение классов•Практическое правило•Эффективный код⚡ +10
    🔒 Pro
02

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

0 / 3 уроков
⌄
  1. 06

    Линейный поиск

    Линейный поиск•Сложность O(n)•Возврат индекса⚡ +10
    🔒 Pro
  2. 07

    Двоичный поиск

    Двоичный поиск•Отсортированный список•O(log n)⚡ +10
    🔒 Pro
  3. 08

    Встроенные средства поиска Python

    Оператор in•Метод index()•Модуль bisect⚡ +10
    🔒 Pro
03

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

0 / 5 уроков
⌄
  1. 09

    Пузырьковая сортировка

    Сортировка пузырьком•Попарное сравнение•O(n²)⚡ +10
    🔒 Pro
  2. 10

    Сортировка выбором

    Выбор минимума•Обмен позициями•O(n²)⚡ +10
    🔒 Pro
  3. 11

    Сортировка вставками

    Сортировка вставками•Сдвиг элементов•Малые данные⚡ +10
    🔒 Pro
  4. 12

    Python: sorted() и sort()

    Функция sorted()•Метод sort()•Параметр key⚡ +10
    🔒 Pro
  5. 13

    Сортировка по ключу

    Параметр key•lambda-функция•Сортировка объектов⚡ +10
    🔒 Pro
04

Рекурсия

0 / 5 уроков
⌄
  1. 14

    Что такое рекурсия?

    Вызов себя•Базовый случай•Предел стека⚡ +10
    🔒 Pro
  2. 15

    Рекурсивный факториал

    Факториал•Возврат значения•Рекурсивная формула⚡ +10
    🔒 Pro
  3. 16

    Рекурсивный Фибоначчи

    Числа Фибоначчи•Двойная рекурсия•Мемоизация⚡ +10
    🔒 Pro
  4. 17

    Рекурсивная обработка списка

    Рекурсивный обход списка•Голова и хвост•Накопление⚡ +10
    🔒 Pro
  5. 18

    Рекурсия vs цикл

    Рекурсия vs цикл•Когда рекурсия?•Память стека⚡ +10
    🔒 Pro
05

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

0 / 5 уроков
⌄
  1. 19

    Стек (Stack)

    Принцип LIFO•append и pop•Применение⚡ +10
    🔒 Pro
  2. 20

    Очередь (Queue)

    Принцип FIFO•Использование deque•Моделирование очереди⚡ +10
    🔒 Pro
  3. 21

    Хеш-таблица (dict)

    Структура dict•Поиск O(1)•Пары ключ-значение⚡ +10
    🔒 Pro
  4. 22

    Множество (set) и его свойства

    Структура set•Проверка O(1)•Без дубликатов⚡ +10
    🔒 Pro
  5. 23

    Выбор структуры данных

    Что когда?•Оптимальный выбор•Реальные примеры⚡ +10
    🔒 Pro
06

Классические паттерны

0 / 7 уроков
⌄
  1. 24

    Паттерн двух указателей

    Два указателя•Отсортированный список•Решение O(n)⚡ +10
    🔒 Pro
  2. 25

    Скользящее окно (Sliding Window)

    Скользящее окно•Фиксированный размер•Максимальная сумма⚡ +10
    🔒 Pro
  3. 26

    Проверка анаграммы

    Частота символов•Counter или dict•Сравнение строк⚡ +10
    🔒 Pro
  4. 27

    Длиннейшая подстрока без повторов

    Скользящее окно•Отслеживание через set•Классическая задача⚡ +10
    🔒 Pro
  5. 28

    Задачи на частоты

    Счётчик частот•Counter.most_common•k самых частых⚡ +10
    🔒 Pro
  6. 29

    Префиксная сумма

    Префиксная сумма•Предвычисление•Запрос O(1)⚡ +10
    🔒 Pro
  7. 30

    Алгоритмы: итоговый урок

    Обобщающая практика•Смешанная задача•Выбор алгоритма
    Курс пройден
    🔒 Pro