1.math.factorial(x)
import math
value = math.factorial(x)
2.reduce函式
reduce()函式接收的引數和 map()類似,乙個函式 f,乙個list,但行為和 map()不同,reduce()傳入的函式 f 必須接收兩個引數,reduce()對list的每個元素反覆呼叫函式f,並返回最終結果值。
def factorial(n):
return reduce(lambda x,y:x*y,[1]+range(1,n+1));
當n=1時,reduce(lambda x,y:x*y,[1]);
n=2時,reduce(lambda x,y:x*y,[1,1]);
n=3時,reduce(lambda x,y:x*y,[1,1,2]);計算1*1*2
n=4時,reduce(lambda x,y:x*y,[1,1,2,3]);計算1*1*2*3
3.遞迴實現
def factorial(n):
if n == 0:
return 1
else:
return n*factorial(n-1)
遞迴方法求n 階乘
遞迴的定義 在定義乙個過程或函式時,出現呼叫本過程或者是本函式的成分,稱之為遞迴。通常需要用到遞迴的方法 定義是遞迴的。例如n fibonacci數列問題 資料結構是遞迴的 單鏈表的資料結構,二叉樹的資料結構 問題的求解方式是遞迴的 漢諾塔問題 用遞迴和非遞迴兩種方式求n 問題 include in...
Python練習題 021 遞迴方法求階乘
python練習題 021 利用遞迴方法求5 首先得弄清楚 5 指的是 5的階乘 即 5 1 2 3 4 5。然後呢,據說,遞迴 就是對自身進行呼叫的函式。聽著挺奇怪,反正先依葫蘆畫瓢,寫 如下 def f x if x 0 return 0 elif x 1 return 1 else retur...
python計算6的階乘 python求n的階乘
階乘是基斯頓 卡曼 christian kramp,1760 1826 於1808年發明的運算符號,是數學術語。乙個正整數的階乘 factorial 是所有小於及等於該數的正整數的積,並且0的階乘為1。自然數n的階乘寫作n 下面我們來看一下使用python計算n的階乘的方法 第一種 利用functo...