Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1курс / 2 сем / МЛиТА / лекции (сборник през / МАТ_ЛОГИКА_ЛЕК_7—_копия_—_копия_—_копия_—_копия_—_копия_—_копия.pptx
Скачиваний:
7
Добавлен:
09.07.2024
Размер:
2.87 Mб
Скачать

Cложность вычислений.

Сложность задач - асимптотически временная сложность алгоритма.

Основной вопрос теории сложности : насколько успешно или с какой стоимостью может быть решена данная проблема.

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

верхнюю границу сложности

нижнюю границу сложности

Cложность вычислений.

В отличии от математики в информатике

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

Т.е. надо ответить на следующие вопросы:

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

Cложность вычислений. Асимптотические оценки.

Введем обозначение , связанное с асимптотической оценкой функций.

Пусть даны две функции f(n) и g(n) натурального аргумента n . Тогда функция g мажорирует функцию f (т.е. f растет не быстрее g), если существует положительное число c и натуральное число n0, такое, что

f(n)≤ cg(n) для всех n≥ n0.

Если g мажорирует f, то это обозначается как

f(n)= O (g(n)) (Читается «O большее от g(n)». Тогда функция g является асимптотической верхней границей для функции f.

Cложность вычислений. Асимптотические оценки.

Другими словами, отношение f(n) / g(n) ограничено сверху некоторой константой.

Определение предполагает , что функии f(n) и g(n) асимптотически (т.е. для больших значений

n )неотрицательны . Пр.

Проверить , что (1/2) - 3n =O() Решение.

Итак имеем f(n)=(1/2) - 3n g(n)=

Cложность вычислений. Асимптотические оценки.

Cогласно определению надо найти отношение f(n) / g(n) , которое ограничено константой c, т.е.

- 3n ≤ c

Т.к. вторая функция g(n)= , то разделим на

- ≤ c

Можно найти n0 при определенном c. Cледовательно сложность O().

Cложность вычислений. Асимптотические оценки.

Теорема 1. Если r и s - действительные числа и r ≤ s , n >1 , тогда

Следовательно , =O()

Cложность вычислений. Асимптотические оценки.

Теорема 8.

Для целых чисел a, больших единицы

= О(n)

Теорема 9.

Пусть n - неотрицательноеn!= ( ) число , тогда n! < и следовательно О

Cложность вычислений. Асимптотические оценки.

Cложность вычислений. Асимптотические оценки.

Теорема 1. Если r и s - действительные числа и r ≤ s , n >1 , тогда

Следовательно , =O() Теорема 2.

Если f(n)= O(g(n)) и h(n)= O(g(n)), то (f + h)(n)= O(g(n))

Теорема 3.

Если f(n)=O(g(n)) и h(n)= O(e(n)) , то (f × h)(n)= = O (g × e)(n)

Cложность вычислений. Асимптотические оценки.