Вы находитесь на странице: 1из 11

Министерство образования республики Молдова

Технический Университет Молдовы


Департамент Программной Инженерии и Автоматики

Отчёт
Лабораторная работа №1
Тема: Сравнение времени работы алгоритмов

Проверила Скороходова Т.

Кишинёв – 2021
Тема: Сравнение времени работы алгоритмов
Цель: Временной анализ функций
1)
Функции в порядке возрастания роста:

2)
3)
Контрольные вопросы:

1. Что означает – асимптота роста? Какие обозначения вы знаете?

При анализе поведения функции трудоемкости алгоритма часто используют принятые в


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

В асимптотическом анализе приняты следующие обозначения:

а. Оценка θ (тетта)

б. Оценка О (Омикрон)

в. Оценка Ω (Омега)

2.В чем отличие между Ơ и ơ , Ω и ω?

𝑓(𝑛)=𝑂(𝑔(𝑛))≈𝑎≤𝑏

𝑓(𝑛)=𝑜(𝑔(𝑛))≈𝑎<𝑏

𝑓(𝑛)=𝜔(𝑔(𝑛))≈𝑎>𝑏

𝑓(𝑛)=Ω(𝑔(𝑛))≈𝑎≥𝑏

𝑓(𝑛)=𝜃(𝑔(𝑛))≈𝑎=𝑏

3. Какие способы существуют для сравнения скорости роста двух алгоритмов?

Графический и аналитический

4. Каковы недостатки и преимущества каждого способа?

Графический – наглядный и неточный

Аналитический – ненаглядный и точный

5. Как по графикам можно определить какой из алгоритмов имеет более быстрый рост?

Чем быстрее скорость графика, тем быстрее его рост

6. Верно ли высказывание, что один и тот же алгоритм может иметь различную эффективность
про малых и больших размерности входа?
Многие алгоритмы предлагают выбор между объёмом памяти и скоростью. Задачу можно
решить быстро, использую большой объём памяти, или медленнее, занимая меньший объём.

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

Результат будет получен мгновенно, но это потребует огромного объёма памяти. Карта
большого города может содержать десятки тысяч точек. Тогда, описанная выше таблица,
должна содержать более 10 млрд. ячеек. Т.е. для того, чтобы повысить быстродействие
алгоритма, необходимо использовать дополнительные 10 Гб памяти.

Из этой зависимости проистекает идея объёмно-временной сложности. При таком подходе


алгоритм оценивается, как с точки зрении скорости выполнения, так и с точки зрения
потреблённой памяти.

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

Вам также может понравиться