欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MATLAB编程(1)——计算两个向量元素的组合

程序员文章站 2022-03-02 10:41:18
...

问题描述:

       已知两个向量,现在,分别从两个向量中各取一个元素,做组合,如何得到全部组合结果?

例如:已知向量A=[2;8]; B=[5;8;10];,按要求得到的结果应为:

res =

     2     5
     2     8
     2    10
     8     5
     8     8
     8    10

代码实现:

A = [ 2; 8 ];
B = [ 5; 8; 10 ];
[ m, n ] = meshgrid( A, B' );
[ res(:,1),res(:,2) ] = deal( reshape(m,[],1), reshape(n,[],1) );

 

 

若要去掉组合结果中两个元素重复的这种组合,即要得到如下结果:

res =

     2     5
     2     8
     2    10
     8     5     
     8    10

代码实现:

A = [ 2; 8 ];
B = [ 5; 8; 10 ];
[ m, n ] = meshgrid( A, B' );
[ m, n ] = deal( reshape(m,[],1), reshape(n,[],1) );
k = m==n;
m(k) = [];
n(k) = [];
res(:,1)=m; res(:,2) = n;

 

以上内容参考网址:

http://www.ilovematlab.cn/thread-321138-1-1.html

相关标签: MATLAB