我在 Matlab 中有一个mxn
数组r
,其中的元素为零或一。
我想构造一个p
维度向量,mxn
使得对于i=1,...,m
p(i,1)=r(i,1)
p(i,2)=r(i,2)XOR r(i,1)
p(i,3)=r(i,3) XOR r(i,2)
...
p(i,n)=r(i,n) XOR r(i,n-1)
这段代码做了我想要的,但是对于m,n
大的来说很慢。你能提出更快的建议吗?
m=4;
n=5;
r=[1 1 1 1 1; ...
0 0 1 0 0; ...
1 0 1 0 1; ...
0 1 0 0 0];
p=zeros(m,n);
for i=1:m
p(i,1)=r(i,1);
for j=2:n
p(i,j)=xor(r(i,j),r(i,j-1));
end
end
当然:
p = zeros(m,n);
p(:,1) = r(:,1);
p(:,2:end) = xor( r(:,1:(end-1)), r(:,2:n) );
我们在这里做的是:
p
的第一列r
p
所需XOR
操作的第二列 - 最后一列。作为对 的输入,XOR
我们使用r
. 第一个是第 1 - (last-1) 列。第二列是第二列到最后一列。本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句