再帰関数があんまり理解できていないので、例題を解きながら勉強する
895 views
再帰関数とは、自分自身を呼び出す処理が書いてある関数のこと
パッと見何のこと?ってなるけど、理屈はこんな感じ。
def add(x):
if x == 0:
return 0
return x + add(x - 1)
print(add(3))
6
まずadd(3)が呼ばれる。return の値は 3 + add(2) になる。
次、add(2)が呼ばれる。return の値は 2 + add(1)
次、add(1)が呼ばれる。return の値は 1 + add(0)
最後のadd(0)はif文入るので0を返す。
これが順番に戻る。
add(1) return 1 + 0 で 1が返り、
add(2) return 2 + 1 で 3が返り、
add(3) return 3 + 3 で 6が返る。
だからprintで表示されるのが6!!
とまあ、再帰関数の概念はわかりやすい。
ただ、これ実際使うとなると、怖いことが多い(具体的には、フィボナッチの再帰とか)。
ってことで、どんな時にどうやって使うべきか、勉強してみた
Page 1 of 3.
owl
駆け出しエンジニア
だいたいweb系をかじってる
最近ちょとブロックチェーンに興味出てきた