Algorithm 开放式和封闭式

Algorithm 开放式和封闭式,algorithm,math,Algorithm,Math,如何将循环的开放形式转换为其等价的封闭形式。 此外,有哪些常用的封闭形式是 通常使用效率很高。我想你说的是递归函数和数学 例如考虑下面的和递归函数 sum(0) = 0 sum(i) = sum(i-1) + i 此表单未关闭。封闭形式是sum(n)=(n+1)*n/2,其中只使用+-*/、幂等基本运算,有时还使用阶乘运算 对于您的问题,如何将开放式公式转换为封闭式公式。答案是没有将所有开放形式转换为封闭形式的一般规则,因为一些开放形式没有等价的封闭形式 关于这个问题的严肃处理,你可以参考。这

如何将循环的开放形式转换为其等价的封闭形式。 此外,有哪些常用的封闭形式是
通常使用效率很高。

我想你说的是递归函数和数学

例如考虑下面的和递归函数

sum(0) = 0
sum(i) = sum(i-1) + i
此表单未关闭。封闭形式是
sum(n)=(n+1)*n/2
,其中只使用+-*/、幂等基本运算,有时还使用阶乘运算

对于您的问题,如何将开放式公式转换为封闭式公式。答案是没有将所有开放形式转换为封闭形式的一般规则,因为一些开放形式没有等价的封闭形式


关于这个问题的严肃处理,你可以参考。这本书的主要目标是将一大类递归函数/开放形式转换为它们的封闭形式。

我想你说的是递归函数和数学

例如考虑下面的和递归函数

sum(0) = 0
sum(i) = sum(i-1) + i
此表单未关闭。封闭形式是
sum(n)=(n+1)*n/2
,其中只使用+-*/、幂等基本运算,有时还使用阶乘运算

对于您的问题,如何将开放式公式转换为封闭式公式。答案是没有将所有开放形式转换为封闭形式的一般规则,因为一些开放形式没有等价的封闭形式

关于这个问题的严肃处理,你可以参考。本书的主要目标是将一大类递归函数/开放形式转换为它们的封闭形式。

开放形式通常作为要求解的方程给出。比如说,

a(0) = 1            -- base case
a(n) = b * a(n-1)   -- recurrence relation
要将其转换为闭合形式,需要求解递归关系。在这种情况下,重复替换,直到达到基本情况为止

a(n) = b * a(n-1) = b * b + a(n-2) = ... = b * b * ... * b * a(0) = b^n
这是更有效的,因为幂可以在对数时间n(即与对数n成正比)中计算,而原始的递推关系在时间n中是线性的

有许多技术用于解决递归关系。可以在中找到一些示例。重要的是要认识到,并非所有的递归关系都可以求解,但事实上,大多数都无法求解(这就是为什么编程很重要!)

一个开放形式通常作为要求解的方程给出。比如说,

a(0) = 1            -- base case
a(n) = b * a(n-1)   -- recurrence relation
要将其转换为闭合形式,需要求解递归关系。在这种情况下,重复替换,直到达到基本情况为止

a(n) = b * a(n-1) = b * b + a(n-2) = ... = b * b * ... * b * a(0) = b^n
这是更有效的,因为幂可以在对数时间n(即与对数n成正比)中计算,而原始的递推关系在时间n中是线性的


有许多技术用于解决递归关系。可以在中找到一些示例。重要的是要认识到,不是所有的递归关系都可以解决,但是-事实上,大多数不能解决(这就是为什么编程很重要!)

什么形式?WinForms?请通过添加一些上下文来更具体一点。什么形式?WinForms?请通过添加一些上下文来更具体一点。