2014-02-09 6 views
0

Дайте алгоритм, который вычисляет входной полиномСложность времени для функции полинома?

п х п + а п-1 х п-1 + ⋯ + а х + а

Для заданного значения x во времени Ω (n) и O (n).
Я пытался доказать это, но не смог найти подходящий алгоритм, может ли кто-нибудь помочь мне получить эту идею?

+0

Как это возможно быть n^2? Существует n + 1 членов, каждый из которых вычисляется в O (1) раз, с дополнениями n O (1). – Adam

+1

@Adam: вы не можете вычислить x^n в O (1). –

+1

Вы считаете, что числа являются большими целями с произвольным размером? Если они фиксированы, это «O (N)». – usr

ответ

4

Вы можете использовать Horner's Rule, чтобы оценить его в O (N):

(..((a_n x + a_(n-1)) x + a_(n-2)) x + ... + a_0).

+0

Что относительно Ω (n2)? –

+0

@ user1920333 Просто выделите дополнительный 'for (i = 1; i amit

+0

@ user1920333 Или, возможно, ваш учитель ищет: 'f (x, n) = (n == 0? 1: x * f (x, n-1))' и sum 'an * f (x, n) + (an-1) * f (x, n-1) + ... + a0' – amit

Смежные вопросы