【发布时间】:2014-06-28 10:50:25
【问题描述】:
函数choose(n,k) 告诉我们对于一组n 不同元素存在多少大小为k 的子集。假设我需要实际列出这些子集,我如何创建它?换句话说,我正在寻找一个函数,它接受一个向量x(长度为n)和一个数字k,并返回一个向量列表,每个向量的大小为k,子集为x .列表的长度当然应该是choose(length(x),k)。例如
enum.choose = function(x,k) {
# implementation should go here
{
enum.choose(1:3,2)
# should be:
# [[1]]
# 1 2
# [[2]]
# 1 3
# [[3]]
# 2 3
【问题讨论】:
-
combn(1:3, 2)。检查? combn以获取文档。 -
为什么不回答这个问题?
-
@Ramnath 谢谢。这正是我想要的。