- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
下面的函数返回一个集合(列表)的幂集。
let rec powerset = function
| [] -> [[]]
| x::xs -> List.collect (fun sub -> [sub; x::sub]) (powerset xs)
最佳答案
计算幂集的算法是这样的:
让我们调用原始集合(又名“输入”)A
.让我们从该集合中挑选一个项目,将其命名为 x
.现在,电源集 A
(称之为 P(A)
)是 A
的所有子集的集合.我们可以想到 A
的所有子集由两组组成:包含 x
的子集和那些不包括 x
.很容易看出不包含 x
的子集是 A - x
的所有可能子集( A
不包括 x
):
all subsets of A that don't include x = P(A-x)
A
的所有子集确实包括
x
?通过采取所有不包括
x
的那些和贴
x
进入每一个!
all subsets of A that include x = { for each S in P(A-x) : S+x }
P(A)
:
P(A) = P(A-x) + { for each S in P(A-x) : S+x }
P(A-x)
调用
powerset xs
,然后对于每个子集,粘贴一个
x
到它上面,还包括子集本身。
关于recursion - F# Powerset 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39714607/
我得到了一个列表列表 s : s = [["a1", "A"], ["b4", "B"], ["a3", "A"], ["d6", "D"], ["c4", "C"]] (请注意,列表中的元素不一定以
我正在尝试以两种方式在 Scheme 中实现幂集函数。一种方法是使用尾递归,我是这样做的: (define (powerset list) (if (null? list) '(())
很难说出这里问的是什么。这个问题是含糊的、模糊的、不完整的、过于宽泛的或修辞性的,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开它,visit the help center 。 已关
我需要在 haskell 中创建一个幂集函数,它接受一个集合并输出没有重复条目的幂集,无论输入列表中放入什么。例如:[1,1] 应返回 [[],[1]] powerset [] = [[]]
我使用位移来生成给定数字字符串的幂集。我怎样才能将它限制在一定的长度,比如 4,从而通过不找到不需要的长度的子序列来缩短执行时间。 例如:如果给定的数字字符串是 10292,则只需要以下子序列:102
谷歌搜索了一段时间以找到字符串的子集,我读到 wikipedia 它提到了 .....对于 S 的整个幂集,我们得到: { } = 000 (Binary) = 0 (Decimal) {x} = 1
这个问题在这里已经有了答案: Obtaining a powerset of a set in Java (27 个答案) 关闭 9 年前。 我想找到给定集合的所有子集。我得到的字符串集定义如下:H
下面的函数返回一个集合(列表)的幂集。 let rec powerset = function | [] -> [[]] | x::xs -> List.collect (fun sub ->
Haskell 的表达能力使我们能够相当容易地定义 powerset 函数: import Control.Monad (filterM) powerset :: [a] -> [[a]] power
众所周知,列表的幂集: {1,2,3,4} 是 {{},{1},{2},{1,2},{3},{1,3},{2,3},{1,2,3 },{4},{1,4},{2,4},{1,2,4},{3,4},{1,
我正在尝试寻找一种有效 的方法来获取 PowerSet 的一组子集。 例如,这在集合尺寸较小时有效: Set set = new HashSet(); set.add(1); set.add(2);
是否有一些等效的库或函数可以为我提供一组值的下一个组合,例如 next_permutation 对我有帮助吗? 最佳答案 组合:来自 Mark Nelson 关于同一主题的文章,我们有 next_co
因此,我需要递归地查找给定字符串的所有子集。到目前为止我所拥有的是: static ArrayList powerSet(String s){ ArrayList ps = new A
我正在尝试生成一个集合的幂集,并且我编写了这段代码。问题是,当用户输入集合中的两个相似成员时,它无法正常工作。我能做什么?这是我的代码: #include #include #include #
所以我得到了这个用于 powerset: powerset([], []). powerset([H|T], P) :- powerset(T,P). powerset([H|T], [H|P]) :
我正在使用带有 DrRacket 列表缩写的起始语言,并且想要递归地创建一个 powerset,但无法弄清楚如何去做。我目前有这么多 (define (powerset aL) (cond
Learn You a Haskell演示 powerset功能: The powerset of some set is a set of all subsets of that set. powe
用于环境共享和不确定性的规范“Monad 实例”如下(使用伪 Haskell,因为 Haskell 的 Data.Set 当然不是 Monadic): eta :: a -> r -> {a} --
我有一些这样的代码 import com.google.common.collect.Sets; public void handleInput(Set conditions){ Set> p
为了获取列表的幂集,我实现了以下内容: public static ArrayList> getAllSubsets(ArrayList set, int index, ArrayList subse
我是一名优秀的程序员,十分优秀!