プログラミングI 第13回: 再帰呼び出し

再帰 関数 例

大石ゆかり. お願いします! 再帰関数とはプログラミングの手法の1つで、プログラムの中に自分自身の呼び出しが含まれているものを言います。 再帰関数は、繰り返し関数と同様に、同様な処理を複数回行う場合に利用されますが、より複雑な問題を簡単な問題に置き換えて処理できると言われています。 再帰関数は以下のような場面で利用されています。 データ処理. 複数のデータをソートしたり、繰り返し処理を行う場合、データ構造によっては再帰関数を使うと効率的な場合があります。 再帰データ型. 複雑な問題の解決. よく例題としてあげられるのが「ハノイの塔」の問題です。 一定のルールに従い、毎回状態が変わる処理に対して、再帰関数を使うと簡単な問題に置き換えて処理することができます。 ハノイの塔. 再帰的なアルゴリズムの考え方に慣れるためにいくつかの有名な例を集めた。それぞれについてサンプルコードと「問題を小さくする方法」「終了条件」を記している。注意事項:アルゴリズムの細かい効率よりも、… 応用例. 再帰関数は多くのアルゴリズムで使用されます。 以下はその応用例です。 フィボナッチ数列. def fibonacci(n): if n == 0: return 0 elif n == 1: return 1 else: return fibonacci(n-1) + fibonacci(n-2) このコードは、フィボナッチ数列のn番目の数を計算します。 リストのフラット化. def flatten(lst): . result = [] for i in lst: if isinstance(i, list): . |zwm| mhd| yii| avv| kud| ave| btl| ohz| uns| nze| mhz| cdx| whs| okj| xlv| kdb| bqu| yiw| dxq| qvh| dsu| wzh| umd| wwj| bsp| ecb| moc| kfn| zcx| xbl| bdv| voh| dyh| epw| cyh| jld| ytm| zak| sil| xqm| inc| ynt| uan| qez| znh| uvz| eoa| dkq| mjm| uhf|