配列がある場合:
a = [1,2,3]
各サブセットの要素が一意になるように、配列のサブセットをランダムに選択するにはどうすればよいですか? つまりa
、可能なサブセットは次のようになります。
[]
[1]
[2]
[3]
[1,2]
[2,3]
[1,2,3]
a の実際のサイズは非常に大きいため、可能なサブセットをすべて生成することはできず、非常に多くのサブセットがあります。現時点では、「ランダム ウォーク」のアイデアを使用しています。a の各要素について、「コインを投げ」、コインが表に出た場合はそれを含めますが、これが実際にスペースを均一にサンプリングするかどうかはわかりません。真ん中に偏っているように感じますが、中くらいのサイズの可能性がもっとあるので、これはパターンマッチングをしている私の心かもしれません.
正しいアプローチを使用していますか、またはランダムにサンプリングするにはどうすればよいですか?
(これは言語にとらわれず、「数学的な」質問であることは承知していますが、実際には Mathoverflow の資料ではないと感じました。実用的な回答が必要です。)