Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 什么时候做fl;在解决复发问题时,门洞和天花板是否重要?_Algorithm_Math_Recurrence_Asymptotic Complexity - Fatal编程技术网

Algorithm 什么时候做fl;在解决复发问题时,门洞和天花板是否重要?

Algorithm 什么时候做fl;在解决复发问题时,门洞和天花板是否重要?,algorithm,math,recurrence,asymptotic-complexity,Algorithm,Math,Recurrence,Asymptotic Complexity,我遇到过在解决复发问题时忽略地板和天花板的地方 忽略地板的示例(第4章,第83页): (第2页,练习4.1–1)是忽略天花板的示例: (编辑:我从公众舆论中得知,这有点可疑。) 事实上(第88页)中提到: “在解决复发问题时,地板和天花板通常并不重要” 我的问题是: 这里的“通常”是指所有情况吗?如果是的话,我可以一直忘记它们 如果不是,那么在解决复发问题时,地板和天花板什么时候真正起作用 注意:这不是家庭作业问题。当我刷新DS和algo概念时,我想到了这一点。地板和天花板函数满足以下所有x

我遇到过在解决复发问题时忽略地板和天花板的地方

忽略地板的示例(第4章,第83页):

(第2页,练习4.1–1)是忽略天花板的示例: (编辑:我从公众舆论中得知,这有点可疑。)

事实上(第88页)中提到:

“在解决复发问题时,地板和天花板通常并不重要”

我的问题是:

  • 这里的“通常”是指所有情况吗?如果是的话,我可以一直忘记它们
  • 如果不是,那么在解决复发问题时,地板和天花板什么时候真正起作用

  • 注意:这不是家庭作业问题。当我刷新DS和algo概念时,我想到了这一点。

    地板和天花板函数满足以下所有x的不等式:

    • x−1 < ⌊x⌋ ≤ x

    • x≤ ⌈x⌉ < x+1

    因此,在第一个例子中,我们有⌊n/2⌋ ≤ 不适用。此外,由于对数是单调递增函数,我们知道lg⌊n/2⌋ ≤ lg(n/2)。把这些加在一起,我们得到了第一个不等式2(c)⌊n/2⌋ lg⌊n/2⌋) + N≤ 中国lg(n/2)+n

    第二个示例实际上包含一个错误:c lg⌈n/2⌉ + 1永远不小于但可以等于clg(n/2)+1。然而,clg⌈n/2⌉ + 1.≤ clg(n/2+1)+1,我们可以从上面用clg(n/2)+2(假设n≥ 2) 从而得出T(n)&in;O(lgn)的理想结论

    事实上,第二个例子也包含其他错误:即使在下面一段中陈述了假设(您没有引用),最后一个=符号也应该是≤.


    (Ps.Phew,没有乳胶打字真是一件痛苦的事。如果没有别的,这就是为什么这样的问题最好继续问下去。)

    你的两个例子都可以通过主定理进行分析。主定理推广了主定理,并给出了小扰动可以忽略的充分条件(扰动h(x)是O(x/log2 x))。对于可由Akra–Bazzi分析的整数索引复发,您可以始终忽略地板和天花板,因为它们的扰动最多为1


    Akra–Bazzi未涵盖的每一个重复都在算法和数据结构的上下文中非常奇特。

    在您的示例中,它没有被忽略。@Oli Charlesworth:是的。这就是我迄今为止所看到的,它被忽略了。甚至CLR也提到“它通常被忽略了”.我想知道什么时候地板和天花板真的很麻烦?或者我可以一直忽略它们吗?…而且,这是一个数学问题,不是编程问题。乍一看,地板/天花板被不等式消除的原因是,正在检查渐近行为;复发根本没有得到解决。@Potatoswatter:I我看过关于复发、大Oh等问题的帖子,这些都与编程没有直接关系。如果这不是发布我问题的好地方,你能推荐一个好地方吗?@TejasP@ilmariKaronen:thnkx作为解释。那么我能说在使用替代方法时,天花板永远不能被忽略吗@特贾斯普:对于楼层,f(⌊x⌋) ≤ 对于任何单调递增函数f,这不适用于上限,但我们总是可以使用f(⌈x⌉) ≤ 相反,f(x+1)@lava_07:f(x)=42是单调递增函数(尽管不是严格递增的)。f(⌈x⌉) < 如果f严格递增,则f(x+1)成立,但f(⌈x⌉) = 如果f恰好在从⌈x⌉ 到x+1。@lava_07:是的,对数函数严格递增,至少在数学上是这样定义的。从我的头脑中,我不能100%确定,即使在考虑了浮点不准确的情况下,它是否仍能保持不变,但我怀疑不是。(然后,对于浮点,你甚至不能保证x+1≥ x、 )@lava_07:x