再帰と反復

著者: Laura McKinney
作成日: 4 4月 2021
更新日: 14 5月 2024
Anonim
最長共通部分列-再帰的かつ反復的なDP(LeetCode 26日目)
ビデオ: 最長共通部分列-再帰的かつ反復的なDP(LeetCode 26日目)

コンテンツ

再帰と反復の違いは、再帰は関数自体を呼び出すコード内のステートメントであるのに対し、反復はコードがそれ自体を繰り返すことを許可することです。


再帰と反復は、コンピュータープログラミングにおける2つの重要な概念です。再帰と反復の両方が一連の命令を繰り返します。再帰は、コード自体が関数自体を呼び出すコード内のステートメントであり、反復によりコード自体を繰り返すことができます。条件が偽になるまで、繰り返しのプロセスは繰り返され続けます。再帰は、一連のコードに適用されるプロセスです。反復は命令自体のセットです。

関数を何度も呼び出す必要があるC ++では、再帰が許可されます。再帰は循環定義としても定義されます。ローカル変数とパラメーターのセットは、再帰プログラムを作成するために作成されます。再帰は何度も機能するため、メモリ使用率は向上しません。再帰を終了する場合は、ステートメントまたは一連のコードを使用して再帰を停止する必要があります。

反復は、一連の命令が偽になるまで実行を続けます。反復は、反復ステートメント内のステートメントの初期化、比較、実行、および制御変数の更新を含むステートメントのセットです。反復にはスタックが使用されますが、反復にはスタックが使用されませんが、再帰にはスタックがあります。これが、反復が反復よりも実行が遅い理由です。

内容:再帰と反復の違い

  • 比較表
  • 再帰
  • 主な違い
  • 結論
  • 説明ビデオ

比較表

基礎再帰反復
意味再帰は、関数自体を呼び出すコード内のステートメントです

反復により、コードを繰り返すことができます。

 

適用済み 再帰は関数に適用されます。ループに反復が適用されます
スタックスタックは再帰で使用されますスタックは反復では使用されません。
処理する再帰が遅い反復が速い

再帰

関数を何度も呼び出す必要があるC ++では、再帰が許可されます。再帰も循環定義として定義されます。ローカル変数とパラメーターのセットは、再帰プログラムを作成するために作成されます。再帰は何度も機能するため、メモリ使用率は向上しません。再帰を終了する場合は、ステートメントまたはコードセットを使用して再帰を停止する必要があります。


反復

反復は、一連の命令が偽になるまで実行を続けます。反復は、反復ステートメント内のステートメントの初期化、比較、実行、および制御変数の更新を含むステートメントのセットです。反復にはスタックが使用されますが、反復にはスタックが使用されませんが、再帰にはスタックがあります。これが、反復が反復よりも実行が遅い理由です。

主な違い

  1. 反復は、関数自体を呼び出すコード内のステートメントであり、反復はコードがそれ自体を繰り返すことを許可します。
  2. 反復は関数に適用され、反復はループに適用されます。
  3. スタックは反復で使用されますが、スタックは反復では使用されません。
  4. 再帰は低速ですが、再帰と比較すると反復は高速です。

結論

上記のこの記事では、再帰と反復の明確な違いがわかります。

説明ビデオ