stringtranslate.com

Наихудшая сложность

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

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

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

Определение

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

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

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

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

Способы говорить

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

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

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

Примеры

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

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

Рекомендации