2つの文字列を持つ最初の単語と2番目のすべての組み合わせを生成したい。すべての可能な組み合わせを生成するために、最初の単語に2番目の単語を挿入したいと思います。唯一のルールは、この例では互いに2つの単語のすべての組み合わせを生成
後ろ
なし挿入単語は:
string input = "Hello";
string secondInput = ".";
この方法は: GenerateAllCombinations(input,secondInput);
を返す:
//1 dot
.Hello
H.ello
He.llo
Hel.lo
Hell.o
Hello.
//2 dot
.H.ello
.He.llo
.Hel.lo
.Hel.lo
.Hell.o
.Hello.
.He.llo
.Hel.lo
.Hell.o
.Hello.
.Hel.lo
.Hell.o
.Hello.
H.e.llo
H.el.lo
H.ell.o
H.ello.
Hel.l.o
Hel.lo.
Hell.o.
//3 dots
.H.e.llo
.H.el.lo
.H.ell.o
.H.ello.
.He.l.lo
.He.ll.o
.He.llo.
.Hel.l.o
.Hel.lo.
.Hell.o.
//4 dots
.H.e.l.lo
.H.e.ll.o
.H.e.llo.
.He.l.l.o
.He.l.lo.
.Hel.l.o.
//5 dots
.H.e.l.l.o
.H.e.l.lo.
.He.l.l.o.
原則として私はこのような何かをしたくないと言う: Hell.o....
これにより、無制限の組み合わせが生成されなくなります。
だから、最良のアイデアは再帰を使用することです。私はすでに私が望むことをしているコードを追加しますが、再帰を使用していません。主な問題は、すべての入力で自分のコードを使用できないことです。それはsize'd単語の1つのタイプでのみ働いています。あなたはこれをどのように解決するか考えていますか?
これまでに何を試しましたか? –
再帰的メソッドはそれ自身を呼び出すので、メソッドは最初の文字列の各列のパラメータとしてカウンタを必要とします。 – louis12356
助けを求める前に試して問題を起こしてください。 – RH6