-3

ここでは、同じ数の 1 と 0 の 2 つの数値が与えられています。今、私はそれの可能な順列を見つけようとしています。このように、2 つの 1 と 2 つの 0 を与えたとします。この 0011 から開始します。最初の 1 を左に移動して 0101 を生成し、次に 1001 を生成します。次に、2 番目の 1 を移動して 1010 と 1100 を生成します。このアプローチは機能しますか。私は0110が足りず、これを行う方法がわかりません。これを行うには、再帰的なバックトラックのような方法があると思います。しかし、私はバックトラックのテクニックを知りません。私は再帰を理解しています。だから誰か私にアプローチを教えてもらえますか?? 反復または再帰のいずれか。可能であれば両方。私はすべての可能な順列を見つけようとしています。2 つの 1 と 0 の場合、1001,1100,1010,0101,0110,0011 です。ここでは 4!/(2!*2!) 順列です。111000 や 11110000 など、それ以上の場合はどうすればよいですか? 言語は C++ になります。明確にするために、ooii や kkjj などの任意の文字を指定できます。それは私が操作している文字列でなければなりません

4

2 に答える 2

0

好みの言語でソート アルゴリズムを読み込んでください。並べ替えの種類について説明します。

https://en.wikipedia.org/wiki/Sorting_algorithm

また

私はあなたが何について話しているのか分かりません。

于 2013-08-01T13:59:57.077 に答える