nchoosecrit(年代,乐趣)

返回这些子集(=组合元素的一组),完成一个特定的标准

800下载

更新2018年2月6日

查看许可协议

W = nchoosecrit(年代,乐趣)返回的一个或多个元素的组合集合S(称为一个子集),完成一个特定的标准。这一标准是由函数指定的乐趣。有趣的是一个函数处理一个函数,它接受一个输入参数,并返回一个逻辑标量值。
W将单元阵列行向量。每个单元的W持有的一个组合C S的跳频(C)是正确的。

[W,第九]= nchoosecrit(年代,乐趣)也返回指标,这样年代(第九{k}) = {k}。
最大限度地,有2 ^ N - 1可能的子集S (N元素(S)的数量,因此这个数字增长迅速增加N W是一个选择的子集。

可以是单元阵列,每个单元的W将包含一个单元阵列。

例子:
%找到和op - 6的子集
nchoosecrit ((1 2 3 4 5 6) @ (x)和(x) = = 6)
% - > {(1 2 3)[2 - 4],[1 - 5],[6]}

%发现包含子组4或更多的人詹姆斯或鲍勃,
%,但不是全部!
S ={“鲍勃”“汤姆”“乔”“比尔”的詹姆斯,“亨利”};%整个集团
%的标准1:
fh1 = @ (x)元素个数(x) > = 4;
%的标准2
fhname = @ (x, y)任何(strncmp (y、x元素个数(y)));
fh2中= @ (x) xor (fhname (x,“詹姆斯”),fhname (x,“鲍勃”));
% 2标准组合:
fhcomb = @ (x) fh1 (x) & & fh2中(x);
[W,第九]= nchoosecrit(年代,fhcomb)
第九({2}),W{2} %检查

注:
如果S包含非唯一元素(例如S = [1 1 2]), nchoosecrit意志
返回非唯一的细胞。换句话说,nchoosecrit对待所有元素
年代是独一无二的。一个可以使用nchoosecrit(独特的(S))来避免这样做。
——输出是一样的
Wtemp = nchoose(年代);W = Wtemp (cellfun (Wtemp fh));
但不创建临时数组Wtemp(可能非常大)。

参见nchoosek,烫发
nchoose、permn allcomb文件交换

引用作为

乔斯(10584)(2023)。nchoosecrit(年代,乐趣)(//www.tatmou.com/matlabcentral/fileexchange/40301-nchoosecrit-s-fun), MATLAB中央文件交换。检索

MATLAB版本兼容性
创建R2017b
兼容任何释放
平台的兼容性
窗户 macOS Linux
类别
找到更多的在参数定义帮助中心MATLAB的答案
确认

启发:nchoose

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!
版本 发表 发布说明
2.0.0.0之间

包括指标作为第二个输出

1.0.0.0