函式基礎(四) 遞迴函式

2021-09-25 18:28:39 字數 1017 閱讀 3394

學過數學的可能多多少少聽過「遞迴」這個詞

那麼遞迴函式到底是怎麼個函式呢?

老樣子,從需求找方法!

我想要 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遞迴效率不高,容易導致棧溢位。引入遞迴函式,先看乙個函式呼叫的執行順序。執行順序 如下圖。執行 過程中遇到函式,會在記憶體中載入函式,但不會執行,呼...