查看单个帖子
旧 2019-12-10, 20:48   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 Matlab分区问题

我的头被困在寻找解决我的问题的算法。

假设我有N数字(说4),并且我想拥有所有X分区(X = N / 2)

例:

{1,2,3,4}的2个分区为:(1,2)(1,3)(1,4)(2,3)(2,4)(3,4)[简单来说:所有组合]

我不知道如何生成这些组合。如果你们中的某个人有个主意(我不在乎什么语言。伪代码完全够用。我不在乎它是迭代式的还是显式的)。

最好的问候,Bigbohne



回答:

Matlab为此提供了一个功能:

http://www.mathworks.com/help/techdoc/ref/nchoosek.html

>> x = [1,2,3,4] x = 1 2 3 4 >> nchoosek(x, 2) ans = 1 2 1 3 1 4 2 3 2 4 3 4 像maxwellb这样的循环构造在MATLAB中非常慢...



更多&回答...
poster 当前离线   回复时引用此帖