PHP中计算n的阶乘用递归和循环的方法咋做
发布时间:2023-05-19 15:34:20 所属栏目:PHP教程 来源:
导读:这篇文章给大家介绍了“PHP中计算n的阶乘用递归和循环的方法怎样做”的相关知识,讲解详细,步骤过程清晰,有一定的借鉴学习价值,因此分享给大家做个参考,感兴趣的朋友接下来一起跟随小编看看吧。
1
1
这篇文章给大家介绍了“PHP中计算n的阶乘用递归和循环的方法怎样做”的相关知识,讲解详细,步骤过程清晰,有一定的借鉴学习价值,因此分享给大家做个参考,感兴趣的朋友接下来一起跟随小编看看吧。 1、普通递归实现,根据递归的通用公式fact(n) = n * fact(n-1)很容易写出阶乘的计算代码。 普通递归实现的优点在于代码比较简洁,和通用公式一样的过程使得代码容易理解。缺点则在于由于需要频繁地调用自身,需要大量的入栈出栈操作,整体的计算效率不高。 function fact(int $n): int { if ($n == 0) { return 1; } return $n * fact($n - 1); } 2、普通循环实现,有些动态规划的味道,但由于中间态变量使用频率低,不需要额外存储空间。 所以要比一般的动态规划算法简单。普通递归方法是自顶向下(由 n 到 1)的计算过程,而普通循环是自底向上进行计算。 function fact(int $n): int { $result = 1; $num = 1; while ($num <= $n) { $result = $result * $num; $num = $num + 1; } return $result; } (编辑:聊城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐