私は要素のリスト(1、2、3)を持っており、そのリストのスーパーセット(powerset)を得る必要があります(繰り返し要素なし)。だから、基本的に私がどのように見えるリストのリストを作成する必要があります。何が最善かリストのすべての可能なサブセットを印刷
{1}
{2}
{3}
{1, 2}
{1, 3}
{2, 3}
{1, 2, 3}
これを実装する方法(この場合はシンプル>効率を、リストは巨大ではありませんか)?好ましくはJavaであるが、任意の言語の解決策が有用である。
あなたはそのリストのすべてのサブセットをしたいです。私は再帰を提案したい。 しかし、30-40個以上の要素を扱っている場合、あなたは持っている巨大な(1TB以上の)データに対処することはできません。これは何のために使われますか? –
あなたが探しているこのデータ構造はPowerset(空集合を含んでいることの違いです)と呼ばれます。それはすでにSOで議論されています。 –
Zenzenが正しい方向に向いてくれてありがとうございました... http://stackoverflow.com/questions/1670862/obtaining-powerset-of-a-set-in-javaが見つかりました。 – Steve