与えられた文字のセットのアナグラムを生成する私が作成しているプログラムでは、私の現在のアプローチは次のとおりです。
- すべての文字のすべての組み合わせを取得します
- 各組み合わせグループの順列を取得します
- 結果の順列をアルファベット順に並べ替えます
- 重複するエントリを削除する
私の質問は順列の数学に関するものです。重複するエントリを削除した後、残りのすべてのエントリを格納するために必要な配列サイズをフラットアウトで計算できるかどうか疑問に思っています(たとえば、順列式などと組み合わせて繰り返される文字の数を使用して)。
質問のあいまいさについてお詫び申し上げます。組み合わせと順列についてはまだ調査中です。組み合わせや順列についての理解が深まり、自分のプログラムに慣れたら(去年の夏の私の暇なプロジェクトでした)、目標を詳しく説明していきます。