百度&谷歌竟然搜不到“javascript二维矩阵的乘法”,那我就自己写一个分享给大家。(我写的是两个n*n的二维矩阵的乘法)
下面又到了贴代码的时候了:
function matrixMultiplication(a,b){
var len=a.length,arr=[];
for(var i=0;i<len;i++){
arr[i]=[];
for(var j=0;j<len;j++){
arr[i][j]=0;//每次都重新置为0
for(var k=0;k<len;k++)
{
arr[i][j]+=a[i][k]*b[k][j];//
}
}
}
return arr;
}
另外,再推荐一个JS大神的写法:
function matrixMultiplication(a,b){
return a.map(function(row){
return row.map(function(_,i){
return row.reduce(function(sum,cell,j){
return sum+cell*b[j][i];
},0);
});
});
}
其实思想都是一样的