再帰ってなに?、、、そんな あなたに必見な絶対に役立つ記事!

こんにちは!!
このブログの筆者のまさやんです!

再帰ってなに?、、、
そんな
あなたに必見な絶対に役立つ
記事!
」となります。

 

前回は二分探索木について説明しました!
今回は再帰について説明したいと
思います!!

 

さて皆さん、再帰についてご存じで
しょうか?

コーディング作業にて再帰する箇所を
書いたり、大学の授業などで聞いたことが
ある人も多いかもしれません。

この種類の設問は点数を取る問題のため、
絶対に
落としてはいけない問題です!
そのため同期からバカにされないためには
必須の知識となります。

本記事の結論として、、、

 

・数値を代入して仕組み理解

 

です!

 

再帰とは関数の一部に自分自身の関数を
用いることを指します!

イメージでいうと、積み木をしていく
ような感じですかね。
成長していくような感じでもいいかも
しれません。


次に具体的な設問を用いて解き方を
説明しますね!

例えば設問にて

n>0のとき、F(n)=F(n-1)+F(n-2)
n=1のとき、F(1)=1
n=2のとき、F(2)=2
このときF(4)を求めよ。
ここでnは非負の整数とする

という問題が出題されたとします。

まさやんのオススメとして、とりあえず
数値を
代入して仕組みを理解すること
です!


たとえば「F(n)=F(n-1)+F(n-2)」にn=1を
代入しましょう。

その場合「F(1)=F(0)+F(-1)=1」となります。
ここで非負の制約から、F(-1)は存在しない
ため、「F(1)=F(0)=1」となります!

ここから順番に数値を代入していけば、
問題が解けそうだなという仕組みが
理解できる
と思います!

またF(3)に関して、nに3を代入すると、
「F(3)=F(2)+F(1)=2+1=3」となります。

よってF(4)は「F(4)=F(3)+F(2)=3+2=5」と
なります!


以上のように、とりあえず適当な数値を
代入して、
仕組みを理解すると早く設問を
解けるように
なります。

ちなみにまさやんのオススメとして、0になる
場合を先に考えると、より分かりやすく
解けるようになると経験的に感じています!

基本的な知識は以上です!

皆さんがの問題を簡単に
解けるよう、まさやんは応援しています!!

f:id:masayan39:20210613140113p:plain
今回の記事はここまでです!
もしよろしければ、次の記事も読んで
もらえると嬉しいです!! 

ではでは!