私の友人や先生の多くは、再帰を使わずに数字のすべての可能な並べ替えを見つけるプログラムは不可能だと主張しました1人はそれが可能だが難しいと言った。だから私はこの問題を解決するための助けが必要です。 ありがとうございます。再帰を使わずに、未知の長さの数字のすべての順列を生成する
答えて
再帰は、自身を呼び出す関数の動作です。フードの下では、関数呼び出しはシステムのスタックにプッシュされ、関数の実行が終了すると、スタックからポップされます。
- プッシュ:スタック項目を記憶し、次の操作を有するデータ構造であるスタック
- ポップの最後にアイテムを置く:スタックの端からアイテムを削除し、それを返す
- top:スタックの末尾にあるアイテムを返します。
スタックに格納する内容を定義する必要があります。私たちの場合、それは現在の、おそらく未完成の順列かもしれません。反復的な解決策が必要な場合は、自分でスタックを処理することです。
私は再帰またはスタックを使用することはできません、単純なループ文だけです。 –
@darker_speck再帰を使うべきではありません。私は非再帰的実装について話していました。そのためには、操作の現在の状態を格納するスタックが必要です。スタックがなければ、この問題を解決することはできません。 –
ありがとう、それは助けた。 –
- 1. Cで長さNのすべての文字列を生成
- 2. Scalaで順列を生成する再帰関数
- 3. 未知数の配列と値のすべての値をペアにする再帰的メソッド
- 4. 特定の再帰関数の成長順序
- 5. 反復せずにペアのすべての順列を生成するアルゴリズム
- 6. 小文字の問題に未知の長さ文字列をカバーする
- 7. すべての可能な順列関数を生成する
- 8. 再帰を使用してすべての順列を出力します。
- 9. 文字列のすべての組み合わせを生成する関数
- 10. C++で再帰を使用して文字列の長さを調べようとしています
- 11. 再帰的なpythonで数字のシーケンスを生成する
- 12. 文字列のすべての可能な順列を再帰的に計算するJava
- 13. すべての.htaccessファイルに文字列を再帰的にgrep
- 14. 未知数のスロットを含むすべての組み合わせを生成する
- 15. 数字の文字列をランダムな順序で生成する
- 16. 再帰関数呼び出し - 順列とバックトラックを生成する
- 17. 2つのリストを持つ再帰関数を使用するすべての順列
- 18. 逆順で文字列を出力するCの再帰ルーチン
- 19. 文字列の順列を作成する私の再帰で何が問題になっていますか?
- 20. 再帰を伴わずにネストされた配列を結合する関数を作成する
- 21. 文字列(JavaScript)のすべての順列を再帰的に表示します。
- 22. C++:再帰的に0から9までの数字のすべての順列
- 23. Javascriptを使って別の未知のJSONから再帰的にJSONの読み取りを作成する
- 24. 文字列を返すとTuple Pythonの再帰が生成されます
- 25. シード文字列のすべてのユニークな4文字の順列を生成するには?
- 26. 3つの可能な値を使って長さnの組み合わせ文字列を生成する
- 27. ウェブページから未知の長さの文字列を取得する方法
- 28. 未知の長さの文字列を書式設定するC++
- 29. 長さがnまでのすべての組み合わせ(すべての順列ではない)をnまで生成する
- 30. 未知のヒープ成長
チェックhttp://stackoverflow.com/questions/15848887/calculate-all-unique-permutations-using-nested-loops-in-python – mc20
[順列](https://en.wikipedia.org/wiki/)順列)は、複数の要素で設定されています... "(1つの)番号の順列"は意味がありません... "数字の順列"はどういう意味ですか? – Selvin
@Selvinいいえ、自然数を定義できますセットを使用して:) https://en.wikipedia.org/wiki/Set-theoretic_definition_of_natural_numbers – Kojotak