使用JavaScript计算二维矩阵中对角线总和的减法

用户名

我在hackerrank上练习,并且进行了二维矩阵练习。我在执行过程中遇到错误

  • 11 2 4
  • 4 5 6
  • 10 8 -12

我需要对主要对角线求和:11 + 5-12 = 4之后另一个对角线4 + 5 +10 = 19最后是19-4 = 15

function diagonalDifference(arr) {
     var sumRigth = 0;
     var sumLeft = 0;
     var array = new Array();
     for(var i = 0; i < arr.length ; i++ ){
          for(var j = 0; j < arr[i].length; j++){
               array.push(arr[i][j]);
          }
     }
     for (var i = 0 ; i < array.length; i = i + 4){
          sumRigth += array[i];
     }
     for (var j = 2 ; j < array.length - 1 ; j = j + 2 ){
          sumLeft += array[j];
     }
     return sumLeft - sumRigth;
}
佛陀玛迦莉

你可以试试这个

function sumDiagonal(matrix) {

    let firstSum = 0, secondSum = 0;
    for (let row = 0; row < matrix.length; row++) {
        firstSum += matrix[row][row];
        secondSum += matrix[row][matrix.length - row - 1];
    }
    console.log(firstSum + ' ' + secondSum);
    console.log(firstSum-secondSum);
}

sumDiagonal([[11,2,4],[4,5,6],[10,8,-12]]);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章