0

Pythonで、整数のリストを変更する再帰関数があり、リストが大きいと仮定した場合、これはより高速です。リストをグローバル変数として保持し、引数として渡さないか、またはとして渡します。議論し、それをグローバルにしないのですか?

4

3 に答える 3

1

高速でクリーンなコードの場合、グローバルではなく、カスタムスタックを使用した再帰への反復アプローチを使用する必要があります(アルゴリズムの代替手段がない限り)。

于 2013-01-31T19:02:39.230 に答える
0

リストが参照によって渡され、再帰関数で複製されない場合、パフォーマンスの違いはごくわずかであり、より明確で保守しやすいコードが得られる方法を使用する必要があります。通常、これは配列をパラメーターとして渡しますが、常にそうとは限りません。

于 2013-01-31T19:09:11.917 に答える
-1

リストはアドレスによって渡されるため、余分なオーバーヘッドは単一の関数パラメーター(ポインター)にすぎません。目立たないと思います。

自分でテストする必要がありますが、それが重要だとしたら驚きます。

于 2013-01-31T18:47:20.420 に答える