Зачем мне это?!

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

Однако, опытные инженеры используют этот навык ежедневно, не задумываясь, на уровне рефлексов. Делают они это для предварительного грубого анализа кода, который читают, пишут или только собираются написать.

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

Однако, для большинства ситуаций пиковая производительность не особенно важна. Тогда быстрого анализа асимптотики алгоритма достаточно, чтобы исключить случайное появление сильно неэффективного кода. Именно этот навык и развивает курс.

Чтобы оставить комментарий, войдите
Работает форматирование: **жирный текст**, __курсивный текст__, `код`, ```многострочный код```.