为了账号安全,请及时绑定邮箱和手机立即绑定

数组未在 java 脚本中作为参数传递。

数组未在 java 脚本中作为参数传递。

GCT1015 2022-09-29 16:07:44
我有一个函数,它应该将(n * n)网格作为参数并输出4 nos的最大乘积。所有行。(项目欧拉问题11的一部分)。当我尝试运行它给我的代码时,TypeError: Cannot read property 'length' of undefined我在这里做错了什么?(我是初学者,所以如果我有任何愚蠢的错误,请告诉我。这是我的代码:const grid = [  [40, 17, 81, 18, 57],  [74, 4, 36, 16, 29],  [36, 42, 69, 73, 45],  [51, 54, 69, 16, 92],  [7, 97, 57, 32, 16]];function largestGridProduct(arr) {  let product = 1 , maxProduct = 1;  for(let i=0 ; i<arr.length ; i++){    for(let j=0 ; j<arr.length-3 ; j++){      product = grid[i][j] * grid[i][j+1] * grid[i][j+2] * grid[i][j+3];      if(product > maxProduct){        maxProduct = product;      }    }  }  return maxProduct;}console.log(largestGridProduct(grid));那么我在这里做错了什么?
查看完整描述

3 回答

?
米脂

TA贡献1836条经验 获得超3个赞

您没有返回函数中的任何内容...


顺便说一句,您可以使它更容易。


请参阅此内容:


[

  [40, 17, 81, 18, 57],

  [74, 4, 36, 16, 29],

  [36, 42, 69, 73, 45],

  [51, 54, 69, 16, 92],

  [7, 97, 57, 32, 16]

 ].reduce((max, a2) => {

  const val = a2.reduce((a, b) => {

   return Math.max(a, b);

 });

 return Math.max(val, max); 

}, 0)

它使用箭头函数 (es6) 和数组缩减。这将返回所有输入数组的最大值。


查看完整回答
反对 回复 2022-09-29
?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

像这样工作:)


   if(product > maxProduct){

         return  product = maxProduct;

      }

      return  maxProduct;

    }

  }

}


查看完整回答
反对 回复 2022-09-29
?
DIEA

TA贡献1820条经验 获得超2个赞

这是一个愚蠢的错误,我在函数中使用变量名称“grid”而不是“arr”。顺便说一句,谢谢大家。好的,这是我的工作代码:-


const grid = [

  [40, 17, 81, 18, 57],

  [74, 4, 36, 16, 29],

  [36, 42, 69, 73, 45],

  [51, 54, 69, 16, 92],

  [7, 97, 57, 32, 16]

];


function largestGridProduct(arr) {

  let product = 1 , maxProduct = 1;

  for(let i=0 ; i<arr.length ; i++){

    for(let j=0 ; j<arr.length-3 ; j++){

      product = arr[i][j] * arr[i][j+1] * arr[i][j+2] * arr[i][j+3];

      if(product > maxProduct){

        maxProduct = product;

      }

    }

  }

  return maxProduct;

}


console.log(largestGridProduct(grid));


查看完整回答
反对 回复 2022-09-29
  • 3 回答
  • 0 关注
  • 83 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信