在 Javascript 中镜像 N x N 邻接矩阵的一半
Mirror half of a N x N adjacency matrix in Javascript
我在 javascript 数组中有一个 N x N 矩阵的 一半 ,我需要得到这一半,然后 "mirror"主对角线的另一边。
这是一张解释得更好的图片:
主对角线是红线,我有矩阵的上半部分也需要在红线下方"placed",形成一个完整的矩阵。
数据结构是这样的:
var map = [ ["0","1","2","3"], ["0", "1", "2"], ["0","1"], ["0"] ];
内含列的行。
我经常在问题中插入我已经尝试过的东西,但这次我什至不知道如何开始。所以,如果我没有提供更多信息,我深表歉意。
一种方法是这样的
var i = 0;
var j = 0;
var map = [ ["0","1","2","3"], ["0", "1", "2"], ["0","1"], ["0"] ];
var n = map.length;
var res = new Array(n);
for (i = 0; i < n; i++) {
res[i] = new Array(n);
for (j = 0; j < n - i; j++) {
res[i][i+j] = map[i][j];
}
}
for (i = 0; i < n; i++) {
for (j = i + 1; j < n; j++) {
res[j][i] = res[i][j];
}
}
res
将包含镜像数组
我在 javascript 数组中有一个 N x N 矩阵的 一半 ,我需要得到这一半,然后 "mirror"主对角线的另一边。
这是一张解释得更好的图片:
主对角线是红线,我有矩阵的上半部分也需要在红线下方"placed",形成一个完整的矩阵。
数据结构是这样的:
var map = [ ["0","1","2","3"], ["0", "1", "2"], ["0","1"], ["0"] ];
内含列的行。
我经常在问题中插入我已经尝试过的东西,但这次我什至不知道如何开始。所以,如果我没有提供更多信息,我深表歉意。
一种方法是这样的
var i = 0;
var j = 0;
var map = [ ["0","1","2","3"], ["0", "1", "2"], ["0","1"], ["0"] ];
var n = map.length;
var res = new Array(n);
for (i = 0; i < n; i++) {
res[i] = new Array(n);
for (j = 0; j < n - i; j++) {
res[i][i+j] = map[i][j];
}
}
for (i = 0; i < n; i++) {
for (j = i + 1; j < n; j++) {
res[j][i] = res[i][j];
}
}
res
将包含镜像数组