-4

関数は char[,] を受け取ります。

たとえば、

000
若者
0B0

トラバースすると、ゼロ以外の文字の可能なすべての組み合わせが出力されます。

L
LA
若者
ラボ
あ
アル
AB
広告

等々

private void Traverse(char[,] area) 
{

}
4

1 に答える 1

0

最も簡単な方法は、initial と output の 2 つの文字列を持つ再帰関数を作成することです。順列ではなく組み合わせが必要だと思うので、少し簡単です。基本ケースは、initial が空かどうかをチェックしてから、出力を出力します。このステップでは、イニシャルから文字を削除し、再帰関数を 2 回呼び出しています。ただし、削除された文字が 0 の場合は、関数を 1 回だけ呼び出します (出力に何も追加せずに 0 を削除します)。

于 2013-05-03T17:57:15.683 に答える