考虑下列递归算法,该算法用来计算前n个立方的和:S(n)=13+23+…+n3:建立该算法的基本操作执行次数的递推关系求解
时间: 2023-05-29 14:07:35 浏览: 281
[答案V0.2版]精选微软数据结构+算法面试100题[前20题]
5星 · 资源好评率100%
设递归算法的基本操作执行次数为T(n),则有:
T(n) = T(n-1) + 1 (递归调用S(n-1))
+ 1 (执行S(n-1)的结果加上n的立方)
+ 1 (返回S(n-1)的结果)
化简得:T(n) = T(n-1) + 3
初值为T(1) = 1,因为当n=1时只需要执行1次基本操作(计算1的立方)。
根据递推关系,可得:
T(n) = T(n-1) + 3
= T(n-2) + 3*2
= T(n-3) + 3*3
= ...
= T(1) + 3(n-1)
= 3n - 2
因此,该递归算法的基本操作执行次数的递推关系为T(n) = 3n - 2。
阅读全文