powerset

    1熱度

    3回答

    以下一組給定: X := {Horse, Dog} Y := {Cat} 我定義集合: M := Pow(X) u {Y} ü工會 的結果集的發電機組運行的是: Px := {0, {Horse}, {Dog}, {Horse, Dog}} for empty set 我的問題被引用到unio操作。 我如何統一0和Y? M := {{Horse, Cat}, {Dog, Cat},

    9熱度

    4回答

    我有一個元素列表(1,2,3),我需要獲取該列表的超集(powerset)(不包括重複元素)。所以基本上我需要創建列表的列表,看起來像: {1} {2} {3} {1, 2} {1, 3} {2, 3} {1, 2, 3} 什麼是最好的(在這種情況下,簡單>效率,名單不會是巨大的)的方式來實現這一點?最好在Java中,但任何語言的解決方案都是有用的。

    5熱度

    3回答

    我有一個算法使用的所有位的0 2之間,並^ n來計算一組的冪: public static <T> void findPowerSetsBitwise(Set<T> set, Set<Set<T>> results){ T[] arr = (T[]) set.toArray(); int length = arr.length; for(int i = 0;

    2熱度

    3回答

    我理解並寫了F#的典型功率設置功能(類似於算法節Wikipedia) 後來我發現這個實現冪的,這似乎不錯,緊湊,期待我不理解它。 let rec powerset = function | [] -> [[]] | h::t -> List.fold (fun xs t -> (h::t)::t::xs) [] (powerset t); 我打破了這種下降到

    0熱度

    2回答

    給定PHP中的元素數組,我希望創建一個新的二維數組,其中只包含特定長度的冪集的元素。舉個例子,對於下面的數組: array(4) { 0 => 'A', 1 => 'B', 2 => 'C', 3 => 'D' } 如果我要運行函數fixed_length_power_set($arr, 2)那麼我想它返回: array(6) { 0 =>

    7熱度

    5回答

    試圖計算9個字母的字符串'ABCDEFGHI'的所有子集(power set)。 使用標準的遞歸方法,我的機器在完成前遇到內存不足(1GB)錯誤。我沒有更多的物理記憶。 這怎麼能做得更好?語言不成問題,並且發送到標準輸出的結果也很好 - 在輸出之前不需要全部保存在內存中。

    4熱度

    1回答

    實際上,我有一組具有概率的對象,我想看看每個可能的一組,他們是多麼可能是他們是所有假設他們是獨立的 - 即按子集的元素的乘積的降序 - 或按照長度的順序,如果概率是一樣的(所以(1,0.5)在(0.5)之後)。 例子:如果我有[ 1, 0.5, 0.1 ]我想[(), (1), (0.5), (1, 0.5), (0.1), (1, 0.1), (0.5, 0.1), (1, 0.5, 0.1)

    0熱度

    1回答

    想象一下,我們有一個集合S = [a,b,c,d,e,f]。我們有一組N = [1,2,3]。 如何在所有可能的組合中將S的元素分配給N的元素? 期望的結果將保持這樣的事情: [1,[α]],[2,[B,C]],[3,[d,E,F]。 [1,[a]],[2,[b,c,d]],[3,[e,f]]。 等 它是一個powerset產生問題,或者別的什麼嗎?我怎樣才能找到它的複雜性和空間複雜性? 如何生成

    1熱度

    2回答

    假設我們有一個完全連接的有向圖G。頂點是[a,b,c]。每個頂點之間有兩個方向的邊。 給定一個起始頂點a,我想遍歷所有方向的圖並且只有當我點擊已經在路徑中的頂點時才保存路徑。 因此,功能full_paths(a,G)應該返回: - [{a,b}, {b,c}, {c,d}] - [{a,b}, {b,d}, {d,c}] - [{a,c}, {c,b}, {b,d}] - [{a,c}, {

    0熱度

    3回答

    這可能是語言不可知/有用的答案可能只是在僞代碼中。 我有一個程序,我想測試一系列的輸入。該程序需要一組文件,其中之一被指定爲根。我想用所有可能的文件子集來運行程序。 (包含相同文件但具有不同根的兩個子集被認爲是不同的。) 下面是一個相同的例子。說我有文件A,B和C.我想要測試: {A}, root = A {B}, root = B {C}, root = C {A B}, root = A