Time complexity 如何找到给定时间和深度的分支进行迭代深化?

Time complexity 如何找到给定时间和深度的分支进行迭代深化?,time-complexity,iterative-deepening,Time Complexity,Iterative Deepening,我的教授提出了以下问题,我真的不知道如何开始解决这个问题。欢迎任何帮助 假设树的空间是一棵具有均匀分支b的树,每个节点正好有b个子节点。我们从树根开始,以迭代深化的方式探索空间。程序将在0.2秒内在深度为3的位置找到第一个解决方案,并在10秒内在深度为5的位置找到下一个解决方案。我们知道第三种解决方案是在深度9。估计一下我们预计程序需要多少时间才能找到第三个解决方案。记住学校数学和几何级数之和 树看起来像b=3子级的示例 N N N N N N N N

我的教授提出了以下问题,我真的不知道如何开始解决这个问题。欢迎任何帮助


假设树的空间是一棵具有均匀分支b的树,每个节点正好有b个子节点。我们从树根开始,以迭代深化的方式探索空间。程序将在0.2秒内在深度为3的位置找到第一个解决方案,并在10秒内在深度为5的位置找到下一个解决方案。我们知道第三种解决方案是在深度9。估计一下我们预计程序需要多少时间才能找到第三个解决方案。

记住学校数学和几何级数之和

树看起来像b=3子级的示例

         N
  N      N      N
N N N  N N N  N N N    
K个顶层的节点数为1+b+b^2+b^3…+b^k-1

我们可以看到k=3和k=5

S(5) / S(3) = 10 / 0.2

(b^5 - 1) / (b^3 - 1) = 10 / 0.2 = 50
对于不太小的幂,忽略-1项的近似

b^5 / b^3 = b^2 ~ 50
查找k=9的结果

b^9 / b^5 =  b^4 ~ 2500

所以时间是10*2500=25000秒~7小时

如果你不知道从哪里开始做作业,你应该依次问:你的老师、助教、同学、其他人。您的老师比我们更了解您的背景以及本练习的目的,因此他们能够提供更适当的帮助。这个网站也不太适合导师式的指导,而不是仅仅给出一个你可能不理解或从中学不到的答案,这才是在这种情况下最有益的。我投票结束这个问题,因为这是数学问题,而不是编程问题。
b^9 / b^5 =  b^4 ~ 2500