Начальный уровень · Алгоритмы
Сложность алгоритмов
Объяснить big o и выполнить упражнение «Сравнить линейное и квадратичное решения», обосновав выбранный подход.
Это программа подготовки модуля. Полный урок ещё не опубликован. Существующие статьи используются как заготовки и требуют редакторской проверки.
Перед началом
Последовательность уроков
Big O
До урока: предварительные знания модуля. Результат: объяснить big o на примере и применить в итоговом упражнении.
Подготовить пошаговый пример, схему состояний алгоритма, типичную ошибку и способ её обнаружения.
Время и память
До урока: Big O. Результат: объяснить время и память на примере и применить в итоговом упражнении.
Подготовить пошаговый пример, схему состояний алгоритма, типичную ошибку и способ её обнаружения.
Размер входа
До урока: Время и память. Результат: объяснить размер входа на примере и применить в итоговом упражнении.
Подготовить пошаговый пример, схему состояний алгоритма, типичную ошибку и способ её обнаружения.
Исходные статьи
- Асимптотический анализ и нотация Big O: Полное руководствоЗаготовка · ожидает дополнения и проверки
Практика
- 1. Сумма за один проходОсвоение · C++ / Python
- 2. Количество положительныхОсвоение · C++ / Python
- 3. Размах значенийПрименение · C++ / Python
- 4. Нарушения порядкаПрименение · C++ / Python
- 5. Самая длинная серияНовый контекст · C++ / Python
Проверочные вопросы
- Какие ограничения входа определяют выбор приёма «Big O»? Приведите допустимый и неподходящий случай.
- Как обосновать корректность упражнения «Сравнить линейное и квадратичное решения»? Оцените время и память и назовите граничный тест.
Критерии ответа: верные определения, подходящий пример, явные условия применимости и объяснение проверки.
Итоговое упражнение
Сравнить линейное и квадратичное решения
- Объединить темы модуля и объяснить выбор решения.
- Проверить нормальный, граничный и ошибочный сценарии.
- Обосновать корректность, время и память; приложить результаты проверки.