当前位置:服务支持 >  软件文章 >  Matlab中的排列与组合算法

Matlab中的排列与组合算法

阅读数 388
点赞 21
article_banner

matlab做排列组合:比如要ABCD的全排列(permutation),可以用perms函数    
perms(['ABC'])

运行结果    
CBA    
CAB    
BCA    
BAC    
ABC    
ACB

>> perms([1 2 3])

ans =

    3     2     1    
    3     1     2    
    2     3     1    
    2     1     3    
    1     2     3    
    1     3     2

 
以下是几个常用的排列、组合与阶乘等函数。    
1、combntns(x,m)      
列举出从n个元素中取出m个元素的组合。其中,x是含有n个元素的向量。    
2、perms(x)  
给出向量x的所有排列 (permutation)。    
3、nchoosek(n,m)    
从n各元素中取m个元素的所有组合数。  nchoosek(x,m)从向量x中取m个元素的组合    
4、factorial(n)      
求n的阶乘。    
5、prod(n:m)  

%求排列数:m*(m-1)*(m-2)*…*(n+1)*n  prod(1:2:2n-1)或prod(2:2:2n)  %求(2n-1)!!或(2n)!!    
6、cumprod(n:m)    
输出一个向量[n n*(n+1) n(n+1)(n+2) … n(n+1)(n+2)…(m-1)m]    
7、gamma(n)    
求n!    
8、v='n!'; vpa(v)

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利