たとえば、リストが2つある場合は、次のようにします。
foreach (Item item1 in lists[0])
foreach (Item item2 in lists[1])
// Do something with item1 and item2
または私が3つ持っていたら、私はします
foreach (Item item1 in lists[0])
foreach (Item item2 in lists[1])
foreach (Item item3 in lists[2])
// Do something with item1, item2, and item3
しかし、コンパイル時にコレクションに含まれるリストの数がわからない場合、lists
すべての順列を簡単に繰り返すにはどうすればよいですか?
AC#ソリューションが理想的ですが、適切なアルゴリズムを示す任意の言語のソリューションが便利です。
良い2次元の例は、スプレッドシートの列のリストと行のリストで、各セルで処理を行う必要があります。ただし、これはn次元の問題です。