
- •Содержание
- •Введение
- •Некоторые теоретические сведения. Асимптотические обозначения и основные классы эффективности алгоритмов
- •2. Задание № 1. Разработка программы оценки средней трудоёмкости произвольного алгоритма методом марковских цепей
- •3. Задание № 2. Исследование эффективности равносильных алгоритмов
- •4. Примеры решения типовых задач
- •Контрольные вопросы
- •Библиографический список
4. Примеры решения типовых задач
Задача 1. Требуется определить класс эффективности алгоритма (по нотации О), если известно, что число базовых операций для его реализации представлено зависимостью t(n)=100n+5.
Решение задачи 1.
Попытаемся доказать, что справедливо утверждение
100n+5O(n2).
Действительно, для всех n5 справедливо следующее отношение:
100n+5100n+ n=101n101n2.
Таким образом, для данного случая в качестве констант С и n0, о которых говорится в определении можно взять 101 и 5, но это не единственное решение.
Например, С=105 и n0=5 также удовлетворяют этому отношению.
Задача 2. Требуется определить класс эффективности алгоритма (по нотации ), если известно, что число базовых операций для его реализации представлено зависимостью t(n)= n3.
Решение задачи 2.
Предположим, что по нотации алгоритм принадлежит к классу эффективности квадратичных алгоритмов. Докажем, что n3(n2).
В самом деле, для всех n0 выполняется строгое неравенство n3n2.
Таким образом, для данного случая можно положить С=1 и n0=0.
Контрольные вопросы
Каковы основные критерии оценки эффективности алгоритмов?
Что такое класс эффективности алгоритма?
Какие способы оценки эффективности алгоритмов Вы знаете?
Что собой представляют нотации О, , Θ для оценки класса эффективности алгоритма?
В каких случаях отдаётся предпочтение оценке эффективности алгоритма в соответствии с каждой из нотаций?
Библиографический список
Ахо А.В. Хопкрофт Дж. Э., Ульман Дж. Д. Структуры данных и алгоритмы.– М.: Издательский дом «Вильямс», 2000.– 950с.
Грин Д. Кнут Д. Математические методы анализа алгоритмов.М.: Мир, 1987. 590с.
Кормен Т. Алгоритмы построение и анализ (второе издание)М.: Издательский дом «Вильямс», 2007. 633с.
Решение задач вычислительной математики в системе MATLAB. методические указания к выполнению лабораторных работ по дисциплине «Информатика и программирование» для студентов всех форм обучения направления «Корабли и океанотехника»/ Е.М. Шалимова, М.А. Лебедева.Севастополь. Изд-во СевНТУ, 2009. 44с.
Заказ № ___ от «___» _________ 2013 г. Тираж ___ экз.
Изд-во СевНТУ