一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!。 知识点: 递归,就是在运行的过程中调用自己。 一个函数调用自己,就叫做递归函数。构成递归需具备的条件: 子问题须与原始问题为同样的事,且更为简单。 不能无限制地调用本身,须有个出口,化简为非递归状况处理。
示例1
输入
1
输出
1
示例2
输入
2
输出
2
加载中...
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ public int factorial (int i) { // write code here } }
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ int factorial(int i) { // write code here } };
#coding:utf-8 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param i int整型 数字 # @return int整型 # class Solution: def factorial(self , i ): # write code here
using System; using System.Collections.Generic; class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ public int factorial (int i) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ function factorial( i ) { // write code here } module.exports = { factorial : factorial };
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param i int整型 数字 # @return int整型 # class Solution: def factorial(self , i: int) -> int: # write code here
package main import "fmt" /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ func factorial( i int ) int { // write code here }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ int factorial(int i ) { // write code here }
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param i int整型 数字 # @return int整型 # class Solution def factorial(i) # write code here end end
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ def factorial(i: Int): Int = { // write code here } }
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ fun factorial(i: Int): Int { // write code here } }
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ public int factorial (int i) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ export function factorial(i: number): number { // write code here }
public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ func factorial ( _ i: Int) -> Int { // write code here } }
struct Solution{ } impl Solution { fn new() -> Self { Solution{} } /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param i int整型 数字 * @return int整型 */ pub fn factorial(&self, i: i32) -> i32 { // write code here } }
1
1
2
2