递归的实现

简介: 用递归实现一个阶乘算法5! = 5 * 4 * 3 * 2 * 1 = 120用递归function factorial(n) { if (n === 0) { return 1; } else { return n * factorial...
用递归实现一个阶乘算法

5! = 5 * 4 * 3 * 2 * 1 = 120

用递归
function factorial(n) {
    if (n === 0) {
        return 1;
    } else {
        return n * factorial(n - 1);
    }
}



用栈操作 function fact(n) { var s
= new Stack(); while (n > 1) { //[5,4,3,2] s.push(n--); } var product = 1; while (s.length() > 0) { product *= s.pop(); } return product; } fact(5) //120

 

相关文章
|
8月前
|
算法 C语言
c递归
c递归
49 2
|
8月前
|
算法 C#
C#递归详解
C#递归详解
70 0
|
JavaScript 前端开发
什么是递归?
什么是递归?
158 0
|
Java 数据安全/隐私保护 决策智能
字符串全排列(递归)
字符串全排列,递归的应用
165 0
|
算法 Python
递归的使用
递归的使用
57 0
|
机器学习/深度学习 BI
递归问题
递归问题
|
机器学习/深度学习
什么是递归
通过阶乘函数f(n)=n! f(0)=1 f(n)=f(n-1)*n(n>=1)简要理解递归
111 0
|
算法 索引
第 6 章 递归
简单的说: 递归就是方法自己调用自己,每次调用时传入不同的变量,递归有助于编程者解决复杂的问题,同时可以让代码变得简洁。
73 0
|
机器学习/深度学习
简单的了解一下递归
在编程中,递归大家肯定都不陌生了吧,今天我们来总结总结有关于递归的东西。