设置递归关系

时间:2017-06-04 02:37:43

标签: algorithm recurrence computation

我收到了这个问题:

Algorithm Mystery1(A[0...n-1])
//Input: An array A[0...n-1] of n real numbers
if (n = 1) return A[0]
else temp = Mystery1(A[0...n-2])
  if temp <= A[n - 1] return temp
  else return A[n - 1]

(a)该算法计算什么?
(b)设置并求解算法基本操作次数的递归关系 被执行。

对于(a)部分,我知道该算法计算数组中的最小元素。对于(b)部分,我认为基本操作是比较,因为它将完成最多次,但我无法弄清楚如何设置递归关系。
我理解如何解决递归关系,我只需要帮助设置问题。

1 个答案:

答案 0 :(得分:0)

复发表达式应为:

T[n] = T[n-1] + O(1)

计算上述表达式时间复杂度为O(n)。