分享今天看到的一句話,與大家共勉。今天在覆盤scala呼叫遞迴函式,下面用一段**來分析一下:先看做了什麼,再看能做什麼,最後才考慮想做什麼。
問題引入**實現(以第7天為例):猴子吃桃子問題
有一堆桃子,猴子第一天吃了其中的一半,並再多吃了乙個!以後每天猴子都吃其中的一半,然後
再多吃乙個。當到第十天時,想再吃時(還沒吃),發現只有
1 個桃子了。問題:最初共多少個桃
子?
object recursive_fun
def f1(day:int): int = else
}}
**實現邏輯(以第7天為例)
Scala之旅 函式詳解
1.scala的函式預設都有返回,unit類似c 裡面的void def funtion unit 以上的無返回值函式可以簡寫和c 類似 def funtion 2.基於簡潔的追求,scala可以偷懶的地方就 如下是帶返回值的3個等價函式 def adda x int int def addb x ...
遞迴呼叫的原理
遞迴 縮小問題規模,會出現邊界條件,通過返回段回去。遞迴也就是自己呼叫自己。例子 age 5 第5個人的年齡 age 4 第4個人的年齡 age 3 第3個人的年齡 age 2 第2個人的年齡 age 1 第1個人的年齡 age n 第n個人的年齡 ag age n 1 第n 1個人的年齡 給出第1...
函式遞迴呼叫
我們學習了函式的巢狀呼叫,可以在函式中呼叫函式。那麼,如果在乙個函式中,呼叫自己這個函式,那麼,這個執行過程稱為 函式遞迴呼叫。這個函式也稱為 遞迴函式。程式測試例子 程式執行結果如下 在這個測試例子中,我們定義了func函式,在func函式中又呼叫了func函式自己 所以,這個過程稱為 遞迴呼叫。...