特定の場所で「あいまいな」値を持つ可能性のあるリストを扱っています。リストは十分に小さいため、バックトラッキング検索を実装するのはばかげているように見えます。現在、可能な値を含むサブリストを使用して、リスト内のあいまいな値を表しています。たとえば、リストは次のとおりです。
[1, 2, [3,4]]
リスト[1,2,3]
または[1,2,4]
. リストには複数のあいまいな値が含まれる場合がありますが、あいまいな要素自体にはあいまいな要素が含まれていない場合があります。あいまいな値を含むリストが与えられた場合、リストが表す可能性のあるすべてのリストのリストを生成しようとしています。前のリストは を返すはず[[1,2,3],[1,2,4]]
です。
これを行うエレガントな方法はありますか?各リストを逆方向に再帰的に作成し、空のリストに追加しようとしましたが、その方法について頭を悩ませることはできません。