1樓:匿名使用者
舉例:a=randn(4,3);
a=a(:)
a=sort(a);
a=reshape(a,4,3);
2樓:井敏富欣可
a=magic(5);
%a為資料矩陣,你改你的資料即可。
n=numel(a);
a(ceil(rand(1)*n))
在matlab中、如何進行全排列
3樓:匿名使用者
a=perms([1 2 3 4 5 0 0]);
a1=find(a(:,1)==0);a2=find(a(:,7)==0);
aa=union(a1,a2);
a(aa,:)=;
da=diff(a,1,2);
[i,j]=find(da==0);
a(i,:)=;
matlab全排列 急!!
4樓:匿名使用者
你的這個是2行11列,要全排列方式為;首先要定義這個矩陣才行。
perms(a(1,:))和perms(a(2,:)),舉個例子吧:
a=[1 2 3;4 5 6]
a =1 2 3
4 5 6
>> perms(a(1,:))
ans =
3 2 1
3 1 2
2 3 1
2 1 3
1 2 3
1 3 2
>> perms(a(2,:))
ans =
6 5 4
6 4 5
5 6 4
5 4 6
4 5 6
4 6 5
我相信你明白了,呵呵。
5樓:廖鮮于白霜
function strc=funstr2(str1,str2)clc,
%檢驗引數是否是字串
ls1=length(str1);
for i=1:ls1
if ~ischar(str1(i))
error('input must be string');
endend
ls2=length(str2);
for i=1:ls2
if ~ischar(str2(i))
error('input must be string');
endend
slen=ls1+ls2;
a=nchoosek(1:slen,ls1);
[m,n]=size(a);
a1=zeros(m,slen);
for i=1:m
for j=1:n
a1(i,a(i,j))=1;
endend
strc=cell(m,1);
for ir=1:m
ic=1;
i1=0;
i2=0;
output=;
while ic<=slen;
if(i1<=ls1)&(a1(ir,ic)==1);
i1=i1+1;
output(ic)=str1(i1);
else if (i2<=ls2)&(a1(ir,ic)==0)i2=i2+1;
output(ic)=str2(i2);
endendic=ic+1;
endstrc=char(output);end
matlab中全排列的問題 10
6樓:功誠蹉燕
perms
產生所有可能的排列語法p
=perms(v)p=
perms(v),這裡v是一個長度為n的行向量,此函式產生v中這n個元素的全排列矩陣,每行為一個排列。矩陣p包含有n!
7樓:真
clear;clc
n=4;
m=3;
x=nchoosek(1:n,m);
y=cell2mat(arrayfun(@(k)perms(x(k,:)),1:nchoosek(n,m),'uniformoutput',0)')
z=nchoosek(n,m)*prod(1:m)
用matlab怎樣寫出一維陣列(或向量)的全排列組合?
8樓:匿名使用者
我只說方法。
(1)用perms
(2)先用nchoosek寫出組合,再對其每種組合用perms進行全排列即可。
matlab程式設計中,如何將一矩陣中等於某個值的元素全部替換成
方法bai如下 1 比如說是2階方陣du,現在對其zhi中的元素進行一些運算並dao把結果重新賦值到 回另一個矩陣中答,proc iml beta q12 beta 1,1 2 q22 beta 2,2 2 3 q print beta q12 q22 q 2 方法 proc iml beta q ...
如何將matlab中simulink的示波器的波形匯入到小波變換工具箱
matlab 有個workspace的空間,你示波器上的值會在那上面顯示,把上面的值匯入就可以了!把simulink資料匯出到工作空間就可以了吧,toworkspace模組 matlab中simulinkscope示波器中的波形如何轉化為函式?我記得圖形可以匯出為資料,當匯出資料後,就可以用exce...
matlab中如何將迴圈語句裡產生的向量放到矩陣裡
clear clcx zeros 10,10 for t 1 10 for m 1 10 x t,m t m endend a x a即為所求 標量的情況最簡單,如果是向量和矩陣 matlab,怎樣將每次迴圈中生成的值存在一個矩陣裡?要簡單的方法。1 第一步開啟matlab,命令列視窗輸入a 1 4...