Perl 6 中列表的所有子集
All subsets of a list in Perl 6
我想知道(记住 Perl 6 拥有您想要的一切),是否有一些内置工具可以帮助生成列表的所有非空子集(顺序无关紧要)。
例如,我有一个列表:
my @a = 1, 2, 3;
我需要一个函数 f
以便 f(@a)
将产生:
((1), (2), (3), (1, 2), (1, 3), (2, 3), (1, 2, 3))
@a.combinations(1..*)
将 return 您正在寻找的 Seq
。请注意,如果没有参数,将生成一个空列表作为第一个元素。
我想知道(记住 Perl 6 拥有您想要的一切),是否有一些内置工具可以帮助生成列表的所有非空子集(顺序无关紧要)。
例如,我有一个列表:
my @a = 1, 2, 3;
我需要一个函数 f
以便 f(@a)
将产生:
((1), (2), (3), (1, 2), (1, 3), (2, 3), (1, 2, 3))
@a.combinations(1..*)
将 return 您正在寻找的 Seq
。请注意,如果没有参数,将生成一个空列表作为第一个元素。