Функция choose(n,k)
сообщает нам, сколько подмножеств размера k
существует для набора из n
различных элементов. Предположим, мне нужно на самом деле перечислить эти подмножества, как мне их создать? другими словами, я ищу функцию, которая принимает вектор 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
документацию. - person Ramnath   schedule 11.05.2014