问题a:
i从n循环到0,所以复杂度为
Θ(n)
问题b:
y=0
for i = 0 to n
a = a[i]
for j = 1 to i
a = a * x
y = y + a
时间复杂度为 Θ(n2)
问题c:
初始i=n,y=0成立
循环:第t步开始前
y=∑n−(t+1)k=0ak+t+1xk
第t步操作:
y=x∑n−(t+1)k=0ak+t+1xk+at=∑n−tk=0ak+txk
故第t步结束后,保持循环不变
结束后i=-1,故
∑nk=0akxk
故循环不变式成立
问题d:
问题c已经给出了证明