javascript二维数组转置,如何使用JavaScript转置二维数组?

给定一个二维数组(矩阵),如何使用JavaScript进行矩阵的转置?下面本篇文章就来给大家介绍一下使用JavaScript转置二维数组的方法,希望对大家有所帮助。

847af6cf6c7643aed85bb20c04276ad7.png

方法1:

● 将二维数组存储到变量中。

● 显示二维数组(矩阵)内容。

● 调用map()方法,它为数组中的每个元素提供一次回调函数,相对于数组对角线调换数组中元素的位置。

示例:使用array.map()方法

点击这里

var el_up = document.getElementById("Array");

var el_down = document.getElementById("Array_DOWN");

var array = [

[1, 1, 1],

[2, 2, 2],

[3, 3, 3],

];

el_up.innerHTML = "[ [ " + array[0] + " ] ], [ [ "

+ array[1] + " ] ], [ [ " + array[2] + " ] ]";

function transpose(mat) {

for (var i = 0; i < mat.length; i++) {

for (var j = 0; j < i; j++) {

const tmp = mat[i][j];

mat[i][j] = mat[j][i];

mat[j][i] = tmp;

}

}

}

function Run() {

array = array[0].map((col, i) => array.map(row => row[i]));

el_down.innerHTML = "[ [ " + array[0] + " ] ], [ [ "

+ array[1] + " ] ], [ [ " + array[2] + " ] ]";

}

效果图:

0b18436702a36e131b754436e9705a9f.gif

方法2:

● 将二维数组存储到变量中。

● 将数组中的每个元素替换为其相对于数组对角线的镜像。

示例:创建一个函数,该函数用镜像替换每个元素以获取数组的转置。

点击这里

var el_up = document.getElementById("Array");

var el_down = document.getElementById("Array_DOWN");

var array = [

[1, 1, 1],

[2, 2, 2],

[3, 3, 3],

];

el_up.innerHTML = "[ [ " + array[0] + " ] ], [ [ "

+ array[1] + " ] ], [ [ " + array[2] + " ] ]";

function transpose(mat) {

for (var i = 0; i < mat.length; i++) {

for (var j = 0; j < i; j++) {

const tmp = mat[i][j];

mat[i][j] = mat[j][i];

mat[j][i] = tmp;

}

}

}

function gfg_Run() {

transpose(array);

el_down.innerHTML = "[ [ " + array[0] + " ] ], [ [ "

+ array[1] + " ] ], [ [ " + array[2] + " ] ]";

}

效果图:

c4f48f5b4987069f021b6ae32e4c0df2.gif

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值