Разделы презентаций


Анализ производительности алгоритмов

ЛитератураКормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы: построение и анализ. — М.: Изд. Дом Вильямс, 2000. — 960 с.Ахо А., Хопкрофт Д., Ульман Д. Структуры данных и алгоритмы. – М.: Изд. Дом

Слайды и текст этой презентации

Слайд 1Анализ производительности алгоритмов

Анализ производительности алгоритмов

Слайд 2Литература
Кормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы: построение и анализ.

— М.: Изд. Дом Вильямс, 2000. — 960 с.
Ахо А., Хопкрофт

Д., Ульман Д. Структуры данных и алгоритмы. – М.: Изд. Дом Вильямс, 2000. – 384с.
Кнут Д. Искусство программирования, т.1 Основные алгоритмы, Изд. Дом Вильямс, 2000. – 384с.

ЛитератураКормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы: построение и анализ. — М.: Изд. Дом Вильямс, 2000. —

Слайд 3Литература
Левитин, А. Алгоритмы: введение в разработку и анализ. : Пер.

с англ. — М. : Издательский дом "Вильяме", 2006. —

576 с.
Дж. Макконнелл Основы современных алгоритмов. 2-е издание. М.: Техносфера, 2004. - 368с.

ЛитератураЛевитин, А. Алгоритмы: введение в разработку и анализ. : Пер. с англ. — М. : Издательский дом

Слайд 4Понятие сложности алгоритмов
Анализом задач с точки зрения вычислительной сложности занимается

раздел теории алгоритмов – теория сложности вычислений
Для программиста теория сложности

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

Слайд 5Как оценить эффективность алгоритма?
Используют порядок роста необходимого времени или емкости

памяти при увеличении входных данных.
Время (память), затраченное алгоритмом, как функция

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

Слайд 6Пример
Алгоритм вычисления значения многочлена степени n в заданной точке x.

Алгоритм

1
Для каждого слагаемого, кроме a0 возвести x в заданную степень

последовательным умножением и затем домножить на коэффициент. Затем слагаемые сложить.
Вычисление i-го слагаемого (i=1..n) требует i умножений.
всего 1 + 2 + 3 + ... + n = n(n+1)/2 умножений.
кроме того, требуется n+1 сложение.
Всего n(n+1)/2 + n + 1= n2/2 + 3n/2 + 1 операций.

Pn(x) = anxn + an-1xn-1 + ... + aixi + ... + a1x1 + a0

ПримерАлгоритм вычисления значения многочлена степени n в заданной точке x.Алгоритм 1Для каждого слагаемого, кроме a0 возвести x

Слайд 7Пример
Алгоритм 2
Вынесем x за скобки и перепишем многочлен в виде

Самая

внутренняя скобка требует одно умножение и одно сложение. Ее значение

используется для следующей скобки.
И так, одно умножение и одно сложение на каждую скобку, которых n-1 штука.
И еще после вычисления самой внешней скобки умножить на x и прибавить a0.
Таким образом, всего n умножений и n сложений, всего 2n операций.

Pn(x) = a0 + x(a1 + x(a2 + ... ( ai + .. x(an-1 + anx)))

ПримерАлгоритм 2Вынесем x за скобки и перепишем многочлен в видеСамая внутренняя скобка требует одно умножение и одно

Слайд 8Обозначения сложности
широкое распространение для оценивания алгоритмов в отношении размера входных

данных получили обозначения с использованием символа О(*).
Типичный результат:
сложность алгоритма

сортировки – О(nlogn). Читается как «сложность алгоритма порядка nlogn»
это следует понимать так: существует константа C > 0, такая, что время работы алгоритма в худшем случае не превышает C·n·log2n.
Существует и другой подход, который заключается в рассмотрении сложности в среднем.
Обозначения сложностиширокое распространение для оценивания алгоритмов в отношении размера входных данных получили обозначения с использованием символа О(*).

Слайд 9Выражение О(*) показывает, насколько быстро увеличивается время работы алгоритма с

увеличением размерности, т.е.алгоритм, работающий за время О(nlogn) лучше алгоритма с

временем работы О(n2).
Таким образом, сложность алгоритма определяется как порядок функции, выражающее время его работы или затрачиваемую память.

Выражение О(*) показывает, насколько быстро увеличивается время работы алгоритма с увеличением размерности, т.е.алгоритм, работающий за время О(nlogn)

Слайд 10Примеры

Примеры

Слайд 11Сравнение среднего, худшего и лучшего случаев

Сравнение среднего, худшего и лучшего случаев

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика