время работы алгоритма с учетом временной сложности

c) Предположим, что алгоритмы A1 и A2 имеют вычислительную сложность О ( н бревно ( н ) ) и О ( н 3 ) соответственно. Оба алгоритма занимают примерно 100 секунд для запуска при вводе данных размером н "=" 10 , 000 . Определите (с точностью до секунды) время, которое потребуется каждому алгоритму для запуска на входных данных размера

я. н "=" 1 , 000

II. н "=" 100

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

Во-первых, нотация большого О дает только верхние границы. Насколько нам известно, оба алгоритма могут работать за линейное время. Второй, ф 1 ( н ) "=" к 1 н бревно ( н ) и ф 2 ( н ) "=" к 2 н бревно ( н ) + 99 оба О ( н бревно ( н ) ) , но если ф 1 ( 10 4 ) "=" ф 2 ( 10 4 ) "=" 100 , затем к 1 "=" 100 к 2 и время их выполнения для н "=" 10 3 или н "=" 10 2 будет очень разным.

Ответы (1)

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

Давайте вызовем среды выполнения для ввода размера н А 1 ( н ) и А 2 ( н ) соответственно. Нам дано, что А 1 ( н ) "=" О ( н бревно ( н ) ) Который означает, что лим н А 1 ( н ) н бревно ( н ) < . Следовательно, предел конечен, но мы еще не знаем, что это такое. Мы можем понять это, используя дополнительную информацию, которую нам дают: А 1 ( 10 ) "=" 100 . Подключаем, получаем А 1 ( 10 ) 10 бревно ( 10 ) 4.3429 . Делая то же самое для А 2 мы получаем А 2 ( 10 ) 10 3 "=" 0,1 .

Теперь мы можем решить проблему:

А 1 ( 1000 ) 1000 бревно ( 1000 ) "=" 4.3429 А 1 ( 1000 ) 30 000

А 2 ( 1000 ) 1000 бревно ( 1000 ) "=" 0,1 А 2 ( 1000 ) "=" 100 000 000

Вторая часть вопроса работает так же.