matlab - 从两个排序矩阵中创建一个新矩阵
问题描述
我有两个NxN
矩阵A
和B
. 我希望创建一个由交替放置的MxM
矩阵和.
偶数行的顺序应该是: ...
而奇数行必须从矩阵 开始,如...C
A
B
A B A B A B
B
B A B A
例如,
对于N=2
,如果:
A = [1 2;
3 4];
B = [5 6;
7 8];
那么对于M=2
C = [A B;
B A];
%so that:
C = [1 2 5 6;
3 4 7 8;
5 6 1 2;
7 8 3 4];
对于M=3
:
C = [A B A;
B A B;
A B A];
为了M=4
C = [A B A B;
B A B A;
A B A B;
B A B A];
这样,生成的矩阵将所有对角线都具有相同的矩阵A
或B
。
这该怎么做?
解决方案
您可以模块化构建矩阵[A B; B A]
和索引:
A = [1 2; 3 4];
B = [5 6; 7 8];
M = 3;
C = [A B; B A];
C = C(mod(0:size(A,1)*M-1, size(C,1))+1, mod(0:size(A,2)*M-1, size(C,2))+1);
推荐阅读
- java - 我的扫描仪的 nextLine() 方法不适用于所有输入,我该如何解决?
- angular - 关于更新我的角度项目的问题
- visual-studio-code - 使用从 pnp spfx 生成器生成的项目时如何禁用烦人的构建错误通知
- javascript - 如何在 javascript 数组中返回传递的当前项目?
- c# - 如何通过 POST 将参数传递到 Azure Functions 2
- microsoft-edge - Edge 不会加载内容
- json - Powershell嵌套json到重复csv
- scala - 在 Scala 中用字符串识别对象字段
- java - 如何快速填充所有枚举值的优先级队列?
- c# - 创建和使用 NuGet 包时,无法为 ... 创建清单资源名称