stringtranslate.com

Сложность в худшем случае

В информатике (в частности, в теории сложности вычислений ) сложность в худшем случае измеряет ресурсы (например, время выполнения, память ), которые требуются алгоритму при заданном вводе произвольного размера (обычно обозначаемом как n в асимптотической нотации ). Она дает верхнюю границу ресурсов, требуемых алгоритмом.

В случае времени выполнения сложность в худшем случае указывает на самое длительное время выполнения алгоритма при любом вводе размера n и, таким образом, гарантирует, что алгоритм завершит работу в указанный период времени. Порядок роста (например, линейный, логарифмический ) сложности в худшем случае обычно используется для сравнения эффективности двух алгоритмов.

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

Определение

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

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

входных данных длиной или размером .

Аналогичные определения можно дать для сложности пространства , сложности случайности и т. д.

Способы речи

Очень часто сложность алгоритма задается в асимптотической нотации Big-O , которая представляет ее темп роста в виде с определенной вещественнозначной функцией сравнения и имеет смысл:

Довольно часто встречается следующая формулировка:

или даже только:

Примеры

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

Смотрите также

Ссылки