2016-12-16 8 views
-1

以下の問題を解決するのを手伝ってください。 は、私は現在、私はすべての項目の数字番号は一意である上記のリストから少なくとも2つの項目のすべての組み合わせを見つける方法を知りたいエクセルVbaは条件付き組み合わせのためのコードです。

(1,2) 
(1,5) 
(2,6) 
(3,4) 
(3,12) 
(4,6) 
(4,9) 
(4,11) 
(6,10) 
(7,9) 
(7,11) 

に列内の次のデータを持っています。たとえば、 {(1,5),(2,6),(3,12),(4,9)}は、そのセット内のすべての数字が一意であるため、有効な組み合わせです.は、6が繰り返されているためではありません。助けてください。私はどうなるのか

+0

したがって、すべての組み合わせを見つけますが、あなたのルールに合わないものは拒否しますか?あなたのコードを見ることは助けになるでしょう。 – Comintern

+0

これは正確に何を行う必要があります。私はそのセットのパワーセットを取得する必要があると思うルールを満たしていないものを拒否するが、それは大きく始まり、減少しているものを拒否する。小規模に始めて追加するのはどうですか? –

+0

アルゴは、パーミュテーションをどのように見つけるかによって異なります。おそらく、最も効率的なのは、サブセット内の重複を打つとすぐに、パリュレーションを再帰して再帰ツリーを終了させることでしょう。 – Comintern

答えて

-1

は次のとおりです。

  1. 変数にデータを読み込み、親を削除し、各配列要素の配列
  2. にすべてのデータを読み込みます。次に、idは分割を使用してデータを配列に分割します。したがって1,2はarray(1)= 1、array(2)= 2となります。これらのデータ項目をキーとして追加して辞書(スクリプト辞書)を使用します。そのようにしてExists関数を使用して、データが重複しているかどうかを判断できます。
  3. すべての要素に対して繰り返します。

結果を別の辞書に保存することも、バリアント配列をリムリ保存することもできます。

これを実行します。

希望に役立ちます。

+0

これはなぜマークされましたか? – PaulG

関連する問題