ホームページ  >  記事  >  php教程  >  再帰の応用例 (1) フォルダの走査

再帰の応用例 (1) フォルダの走査

WBOY
WBOYオリジナル
2016-08-08 08:49:471265ブラウズ

関数の再帰呼び出し

再帰の意味

再帰は実際には単なるアルゴリズムの説明であり、新しい構文ではありません。

問題を解決するときに、ある解決策に従って大きな問題をいくつかの小さな問題に分割すると、これらの小さな問題の解決策が、実は先ほどの大きな問題と同じであることがわかるという状況に遭遇することがあります。解決策はまた同じです!

典型的な例: 階乗を求める!

10! = 10 * 9!

9! = 9 * 8!

8! = 8 * 7!

……

構文的には、

関数の再帰呼び出しとは、関数が実行中に再度それ自体を呼び出すことを意味します!

再帰の 2 つの重要なポイント:

1、再帰終了: 再帰呼び出しをいつ停止するかを指します

2、再帰ポイント: 再帰呼び出しの使用を開始するタイミングを指します

再帰呼び出しを記述するときは、最初に再帰出口を記述し、次に再帰ポイントを記述します。

つまり、再帰呼び出しの特徴は次のとおりです: コードは比較的簡単に記述できますが、実行すると、

より多くのメモリ リソースを消費します !

再帰の本質は空間を時間と交換することである

とも言えます!

以下は、フォルダーを再帰的に走査する小さなケースです:

コード:

リーリー

効果:

次の記事では、再帰的手法を使用して無限分類の小さなケースを実装します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。