return n > 1 ? n * factorial(n-1) : 1
}
factorial(5)//120
以上函数可以求简单的n的阶乘
由于使用的是原生的乘法,所以计算范围有限
主要使用了递归的方式进行计算,是求阶乘的常用方法之一
计算阶乘不一定要用递归, 但你提到了思路就假设有个函数 F(x) 接受一个数, 返回它的阶乘结果
那麽通过定义可发现如下推导式
F(x) = x * F(x - 1)
又F(0) = F(1) = 1
然後把以上式子转化为代码即可
return n > 1 ? n * factorial(n-1) : 1
}
factorial(5)//120
以上函数可以求简单的n的阶乘
由于使用的是原生的乘法,所以计算范围有限
主要使用了递归的方式进行计算,是求阶乘的常用方法之一
计算阶乘不一定要用递归, 但你提到了思路就假设有个函数 F(x) 接受一个数, 返回它的阶乘结果
那麽通过定义可发现如下推导式
F(x) = x * F(x - 1)
又F(0) = F(1) = 1
然後把以上式子转化为代码即可