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

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

Анализ и проектирование алгоритмов

ОТЧЕТ
ПО ЛАБАРАТОРНОЙ РАБОТЕ №1
СРАВНЕНИЕ ВРЕМЕНИ РАБОТЫ
АЛГОРИТМОВ

Работу выполнил: студент группы TI-155

Топал Егор

Проверил: преподаватель APA

Скороходова Т.А.

Кишинев 2016
Задание:

1. Пусть имеется алгоритм, решающий задачу размера n за f(n) секунд. Каков максимальный
размер задачи, которую он сможет решить за время t? Найти его для функций и времён,
перечисленных в таблице.

# 1 2 4 8 16 32

11 log n 0 1 2 3 4 5

12 ln n 0 0.69 1.38 2.07 2.77 3.46

10 √n 1 1.4 2 2.82 4 5.65

8 n 1 2 4 8 16 32

14 1/n 1 0.5 0.25 0.125 0.062 0.031

6 n log n 0 2 8 24 64 160

5 n2 1 4 16 64 256 1024

4 n3 1 8 64 512 4096 32768

3 2n 2 4 16 256 65536 42949¿ 105

2 n! 1 2 24 40320 20922¿ 109 26313*1031

9 n / log n 1 2 2 2.66 4 6.4

13 log log n - 0 1 1.58 2 2.32

7 log (n!) 0 1 4.58 15.29 44.25 117.66

1 nn 1 4 256 16 777*103 18446¿ 1015 14615*1044


1. y = nn

2.5 10 158

2.0 10 158

1.5 10 158

1.0 10 158

5.0 10 157

20 40 60 80 100

2. y = n!

5 10 120

4 10 120

3 10 120

2 10 120

1 10 120

20 40 60 80 100
3. y = 2n

5 10 24

4 10 24

3 10 24

2 10 24

1 10 24

20 40 60 80 100

4. y = n3

1 10 6

800 000

600 000

400 000

200 000

20 40 60 80 100
5. y = n2

10 000

8000

6000

4000

2000

20 40 60 80 100

6. y = n log n
700

600

500

400

300

200

100

20 40 60 80 100
7. y = log (n!)

500

400

300

200

100

20 40 60 80 100

8. y = n

100

80

60

40

20

20 40 60 80 100
9. y = n / log n

25

20

15

10

20 40 60 80 100

10

10. y = √n

10

20 40 60 80 100
11. y = log n
7

20 40 60 80 100

12. y = ln n

20 40 60 80 100
13. y = log log n

2.5

2.0

1.5

20 40 60 80 100

14. y = 1/n

0.10

0.05

20 40 60 80 100

0.05
2. Сравнение алгоритмов

Для всех клеток следующей таблицы ответьте «да» или «нет» на вопрос о том,
можно ли записать А как Ơ, ơ, Ω, ω или Θ от В (k≥1, ε>0, c, m>1 – некоторые константы).

A B Ơ ơ Ω ω Θ

Logk n nε

nk cn

√n nsin n

2n 2n/2

nlog m mlog n

log (n!) log (nn)

3. Сравнение скорости роста

Расположите следующие функции в порядке увеличения скорости роста и


отметьте, какие из этих функций на самом деле имеют одинаковую скорость роста
(каждая функция есть Ơ (следующая)) и отметьте, какие из этих функций на самом деле
имеют одинаковую скорость роста ( одна есть Θ от другой):

1. 2log m (√2) log m

2. 22**n 22**n+1

3. n! (n+1)!

4 log (n!) (log n)!

5. (3/2)n en n*2n

6. n 2n n3 n2

7. n1/ log n n log log n (log n) (log n)

8. ln n ln ln n

9. 4 log n log2 n n log n

10. `√ (log n) 2√ (2log n)


Содержание отчета:

Задание 1.

1. Заполненная таблица.
2. Графики роста функций .
3. Список функций , расположенных в порядке возрастания их роста.
Задание 2.

1. Заполненная таблица.
2. Алгоритм сравнения функций .
3. Обоснование применения алгоритма.
Задание 3.

1. Алгоритм сравнения функций .


2. Обоснование применения алгоритма.
Задание 4.

1. Ответ на контрольные вопросы.


Вывод по лабораторной работе.

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