「再帰」とは|テクスタ辞書


「再帰」とは、あるものの定義や記述にそれ自身が含まれることで、主にプログラミングの分野で用いられます。又、再帰された定義を再帰的定義と言います。

プログラミングにおける再帰の特徴

再帰は、プログラミング言語におけるデータ構造や関数の定義によく用いられます。自分自身を繰り返し呼び出して、呼び出した順に処理が行われて再び帰ってくることから、再帰という名前がついたとされています。

再帰により定義されたデータ構造は再帰的データ構造ないし再帰データ構造と呼ばれます。リストなどは、その代表的な例です。又、再帰により定義された関数は再帰的関数ないし再帰関数と呼ばれます。再帰関数の定義が定義として成立していない場合は、実行した際に無限ループになってしまいます。

再帰のメリットとデメリット

一般に、再帰を用いて書いたプログラムは計算機に膨大な負荷をかけるため、簡単に非再帰プログラムとして書けるものは再帰プログラムを使うべきではないと言われています。

しかし、再帰プログラムは基本と言われているのも又事実です。その理由は、再帰プログラムでは簡単に書けるのに非再帰プログラムではかなり複雑なプログラムになってしまうものがあるからです。このような問題が意外とあるので、再帰プログラム技法を身に付けた後は、まずは非再帰プログラムで考えてみて、難しければ再帰プログラムを使うという手順でプログラミングを行った方が良いかもしれません。