私はこの文字列を "12 13 2 1 444"
私は、整数のセットの異なる順列をすべて生成したいと思います。
というのは
"12 13 2 1 444"
"13 12 2 1 444"
"12 13 1 2 444"
"1 12 13 2 444"
.....
Javaを手伝ってくれますか?
回答:
回答№1は2これを行うには多くの方法があります。私は最良の方法は、これを2つのステップに分けることです:
- ストリングを構成部品に分解してください。
- それらのパーツのすべての順列を生成します。
文字列を個々の値に分割するには、 String.split
方法:
String[] allParts = inputString.split(" ");
いったんこれを取得すれば、多くの順列生成関数の1つですべての順列を生成できます。レオンのリンクはおそらくここで助けになるでしょう。
回答№2の場合は1
再帰的に行う必要があります。チェック http://programminggeeks.com/recursive-permutation-in-java/ ガイドとして