рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Свойства асимптотических функций

Свойства асимптотических функций - раздел Образование, Министерство образования Российской Федерации Введённые Нами Определения Обладают Некоторыми Свойствами Транзитивности, Реф...

Введённые нами определения обладают некоторыми свойствами транзитивности, рефлексивности и симметричности.

Транзитивность:

и влечёт ;

и влечёт ;

и влечёт ;

и влечёт ;

и влечёт .

Рефлексивность:

, , .

Симметричность:

если и только если .

Обращение:

если и только если ;

если и только если .

 

Можно провести весьма условную параллель: отношения между функциями f и g подобны отношениям между числами a и b:

 

 

Замечание. Следует осторожно использовать формулы при работе с О-символикой. Например, формулу ошибочно трактовать по правилу суммы

,

т.к. число последовательных фрагментов есть сама функция от n.

Если операция выполняется за фиксированное число шагов, не зависящее от количества данных, то принято писать O(1).

Пример 1: пусть мы смогли определить величины T(0) = 1, Т(1) = 4, Т(2) = 9 или в общем случае T(n) = (n + 1)². Требуется найти асимптотическую оценку О(f(n)), т.е. некоторую функцию вида f(n), которая бы относилась к одному из известных классов сложности алгоритмов и график которой располагался бы над графиком функции экспериментальных значений времени выполнения программы T(n), то есть описывал зависимость числа выполненных инструкций в худшем случае.

Решение: Как известно, (n + 1)2 = n2 + 2n + 1, то есть T(n) = n2 + 2n + 1.

В качестве асимптотической оценки, т.е. функции расположенной над T(n) можно взять функцию вида f’(n) = n3, так как n3 > n2 + 2n + 1, однако тем самым мы ухудшим «мнение» эксперта об исследуемом алгоритме (он работает быстрее), так как если положить f(n) = n2, и найти такую константу с, чтобы выполнилось T(n) ≤ n2 * с. При с = 2, начиная с n0 = 3, исключая случаи запуска программы с длиной входных данных 1 и 2. Разрешая неравенство 2n2 ≥ n2 + 2n + 1 относительно n, получаем n0 = 3. Рис. 4 Определение константы с и n0  

Заметим, что при с= 3 → n0 = 2, что лучше чем при с= 3, так как асимптотическая оценка справедлива на большем диапазоне входных данных. Самый «идеальный» случай, когда функция f(n) превышает T(n) на всем наборе исходных данных n ≥ 1 – это условие выполняется при с = 4 и n0 = 1.

В отличие от примера T(n) как функцию от некоторого аргумента аналитически задать сложно, а в большинстве случаев – невозможно. Единственный выход – найти верхнюю и нижнюю асимптотическую оценку характера изменения T(n). Для чего вводиться функция Ω(f(n)), которая представляет нижнюю асимптотику. Тогда надо подобрать такой вид функции роста (то есть полином f(n)) для О(f(n)) и Ω(f(n)), что они совпадут в обоих случаях с точностью до полинома – тогда получим точную асимптотическую оценку Θ(f(n)) функции T(n). Согласно определению Θ(×)

.

Не трудно заметить, что условие

выполняется при с1 = 1 и с2 = 4 на всем множестве n. Поэтому для полинома точная асимптотическая оценка составляет n2.

Поскольку для f(n) = n3 имеет строгое неравенство n3 > n2 + 2n + 1, то f(n) = n3 есть o(×), то есть о(T(n)) = n3.

 

Пример 2. По экспериментальным данным T(n) замеров времени выполнения (числа фактически выполненных инструкций) некоторой программы эмпирически определить характер функции роста трудоемкости реализованного алгоритма, вид и значения её асимптотической оценки Θ(n), O(n), o(n), W(n), ω(n):

n
T(n)

 

Решение. Будем решать поставленную задачу графическим методом, то есть построив график T(n), будем подбирать функции, описывающие соответствующий класс сложности алгоритмов. Построив соответствующие графики, наглядно покажем выполнения требований, согласно определениям Θ(n), O(n), o(n), W(n), ω(n).

Рис. 5 Графическое и табличное представления решения задачи.

Как видно из графиков, наилучшим приближением к экспериментальным значениям T(n) будет функция роста, описываемая полиномом вида . Действительно, согласно определению Θ(n) необходимо выполнение требования и при , и условие выполняется (на графике через c1f(n) и c2f(n) обозначены асимптотические границы согласно определению Θ(n) и рис. 2.). Поэтому можно утверждать, что .

Графики и таблица подтверждают, что

при и ;

при и ;

при и ;

при и .

– Конец работы –

Эта тема принадлежит разделу:

Министерство образования Российской Федерации

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

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Свойства асимптотических функций

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Министерство образования Российской Федерации
Московский государственный университет приборостроения и информатики   Структуры и алгоритмы обработки данных (Анализ эффективности алгоритмов)

Понятия алгоритма и структуры данных
Алгоритм – это точное предписание, определяющее вычислительный процесс, ведущий от варьируемых начальных данных к искомому результату. ЭВМ в настоящее время приходится не только быстро счи

Понятия сложности и эффективности алгоритмов и структур данных
В процессе решения прикладных задач выбор подходящего алгоритма вызывает определенные трудности. Алгоритм должен удовлетворять следующим противоречащим друг другу требованиям: 1) быть прос

Асимптотически точная оценка функции роста
Если для функции T(n) найдутся константы c1 > 0 и c2 > 0 и такое число n0 > 0, что выполнится условие

Сложение и умножение в O-символике
Правило суммы. Если и

Ограниченность показателя функции роста
Пусть даны две программы, время выполнения одной O(n²), а вторая O(n³), причем при определенной комбинации компилятора ПК одна программа выполнятся за 100n², а вторая 5n³ может

Принципы анализа эффективности нерекурсивных алгоритмов
Общий план анализа эффективности нерекурсивных алгоритмов: 1. Выбрать параметр (или параметры), по которому будет оцениваться размер входных данных алгоритма (например, число элементов мас

Свойства логарифмов
В приведенных ниже формулах основание алгоритмов считается большей 1; его конкретная величина значения не имеет. Запись lg a означает логарифм по основанию 10;

Значение суммы некоторого ряда
1. 2. 3.

Правила работы с суммами
1. 2. 3.

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги