E(r,n)=(E(r-1,n-1)-E(r,n-1))^ 2 + E(r,n-1)r< = n
请说明获取Big O的过程。
我认为计算此等式的大O等于计算大O:
从i = 0到r的总和,(n选择i)
这是对的吗?
请说明获取Big O的过程。
答案 0 :(得分:1)
确定我正确地理解了问题,并且您希望执行以下每项操作的程序的时间复杂性:
该递归的基本情况是什么?假设E(0,0)是基本情况,E(r,0)是线性递归,直到E(0,0)并且r> 1。 ñ。想象一下,我们形成一个递归树。我们会得到每个级别的调用函数,前一级的n减去1,因为函数总是用n-1调用自身。现在分析树并将其分离,我们得到:
对三重递归进行分析,我们可以通过各种方法(生成函数,主函数等)找到它的复杂性,但让我们使用更简单的方法。让我们假设每个节点使用一个时间单位。我们知道每个级别的级别节点是之前级别的3倍,第一级别有一个节点,树有n级,总时间是所有节点的总和。所以我们得到了 TotalTripleTime = 3 ^ k的Summ(0,n) 这可以通过几何级数的闭合公式给出: (1-3 ^ n + 1)/ - 2是O(3 ^ n)
由于复杂的递归,计算量有点难以理解,而且我没有太多时间,也许我稍后会尝试。