學過數學的可能多多少少聽過「遞迴」這個詞
那麼遞迴函式到底是怎麼個函式呢?
老樣子,從需求找方法!
我想要 100/2 結果繼續除2,直到結果為零,然後列印每一步的結果
怎麼寫呢?可以用迴圈!對!
要的就是這種結果!但是,總有艮的
就想用函式來解決這個問題
甚至更過分的!還不想用迴圈!
能做嗎?於是就有大傻子科學家研究出另一種寫法:
def func(n):
n = int(n/2)
print(n)
func(100)
這麼寫還懂是吧
發現,n 這個變數就變成 50 了,然後還是要執行這個函式
也就是說,我可能要多次呼叫這個函式!
所以,就有了接下來的想法:
成功了!那光成功不行啊,咱們得研究研究怎麼做到的呢???
有感覺出迴圈了嗎?通過不斷的自我呼叫,達到了目的
每一次的函式的輸出都是基於上次的返回結果!
*能不用就不用*
*有些演算法要用*
js基礎 函式 遞迴
test.name就是後面的fun function test a,b a b 為形參 test 1,2 1 2為實參 ps 形參多過實參,實參多過形參,都不會報錯。function test a test 1 遞迴 1 找規律 2 找出口 求n的階乘 規律 n!n n 1 5!5 4!4!4 3!...
Python基礎 遞迴函式
通俗一點來說在函式的內部,直接去呼叫其他函式的方式叫做函式的巢狀.但是,如果這個函式呼叫的是自身呢?這個樣子的函式自身就屬於遞迴函式 經典例項 階乘自身就能用遞迴函式來表達出來 1 1 2 2 1 3 3 2 1 n n n 1 2 1以上是簡單直接說明了階乘的表達,接下來至二級用函式來進行直接表達...
python基礎 遞迴函式
遞迴函式 能自己呼叫自己的函式。特點 1必須有乙個明確的結束條件。否則會成死迴圈 2每次進入更深一層遞迴時,問題規模比上一層要減少。否則記憶體會撐爆 3遞迴效率不高,容易導致棧溢位。引入遞迴函式,先看乙個函式呼叫的執行順序。執行順序 如下圖。執行 過程中遇到函式,會在記憶體中載入函式,但不會執行,呼...