基本情報技術者 解説

再帰的(リカーシブ)

更新日:

再帰的(リカーシブ)

次に、再帰的あるいはリカーシブとは、プログラムの処理中に自分自身を呼び出すことが出来るプログラムをいいます。

数学の階乗計算やWindowsの階層ディレクトリの検索などで用いられます。

このプログラムでは、自分自身を呼び出す前に、必要なデータをスタックに保持をして、

戻ってきたときにスタックからその時のデータを取り出して、呼び出す前の状態に戻していきます。

このスタックについては後の章で詳しく説明を致します。

 

テキストの例を見ると、同じプログラムAが2回自分自身のプログラムを呼び出しています。

まず、①の最初のプログラムAから、1回目のプログラムAを呼び出したときに、スタックに呼び出したときの状態やデータを保持(プッシュ)します。

次に続いて、②の2回目のプログラムAを呼び出したときに、その時の状態をスタックに保持(プッシュ)をします。

この時、スタックには下から①の状態データ、その上に②の状態データが保存されています。

次に、③の2回目に呼び出されたプログラムAが終了したときに、スタックから②で呼び出したときに保持してある、②の状態のデータをスタックから読出し(プル)を行います。

スタックは、読出し(プル)を行うとスタックからは削除されます。

これで、1回目に呼び出されたプログラムAが元の状態に戻りました。

 

次に、④の1回目目に呼び出されたプログラムAが終了すると、スタックから①で保存しておいた①の状態をスタックから読出し(プル)をします。

これで、最初のプログラムAの状態に戻りました。

このスタックの仕組みについては後の章で詳しく説明を致します。

 
 
続きはこちら ↓↓↓

 
基本情報技術者試験 ビデオ講座 YouTube

 

コンテンツの利用について
こちらをお読みください

基本情報技術者試験対策 Cloud Notes コンテンツ利用について

おすすめ記事

Eラーニング 1

基本情報技術者試験対策 テキスト クラウドノーツ® 基本情報技術者試験対策 YouTubeを始めたけれど、スマホで見ていたら画面が小さくて見ずらいといったお悩みの方はいらっしゃいませんか? そんな方に ...

Eラーニング 2

システム システムの稼働率 システムの稼働率を計算するにあたって、つぎのような必要な項目があります。 まず、MTBF 平均故障間隔とは、システムや機器が稼働を開始してから次に故障するまでの平均稼働時間 ...

Eラーニング 3

論理回路 半加算器 全加算器 この講習では、半加算器と全加算器について見ていきましょう。 半加算器回路は、2進数の足し算を行う際に使用される回路です。 入力側AとBから2つの信号を入力し、その入力信号 ...

Eラーニング 4

セキュリティ セキュリティ ディジタル証明書 過去問題 解説 この問題は「ディジタル証明書」で、検証できることは、「送信者が正しいこと」と「改ざんの有無」となります。 「送信者が正しい」というのは、受 ...

-基本情報技術者 解説
-, ,

テキストのコピーはできません。

Copyright© 基本情報技術者試験 無料ビデオ , 2024 All Rights Reserved.