美文网首页
Return Largest Numbers in Arrays

Return Largest Numbers in Arrays

作者: Marks | 来源:发表于2017-05-02 11:08 被阅读13次

    大数组中包含了4个小数组,分别找到每个小数组中的最大值,然后把它们串联起来,形成一个新数组。
    largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]) 应该返回一个数组
    largestOfFour([[13, 27, 18, 26], [4, 5, 1, 3], [32, 35, 37, 39], [1000, 1001, 857, 1]]) 应该返回 [27,5,39,1001].
    largestOfFour([[4, 9, 1, 3], [13, 35, 18, 26], [32, 35, 97, 39], [1000000, 1001, 857, 1]]) 应该返回 [9, 35, 97, 1000000].

    //错误!
    function largestOfFour(arr) {
      // You can do this!
      var newArr = [];
      for(var i=0;i<arr.length;i++){
        for(var j=0;j<arr[i].length;j++){
          var max = 0; // j作用域外无法访问max
          if(max < arr[i][j]){
            max = arr[i][j];
          }
          newArr[i] = arr[i][0];// 直接用max
        }   
      } 
      return newArr; 
    }
    largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);
    
    //正解
    function largestOfFour(arr) {
      // You can do this!
      var newArr = [];
      
      for(var i=0;i<arr.length;i++){
        var max = 0;
        for(var j=0;j<arr[i].length;j++){
          
          if(max < arr[i][j]){
            max = arr[i][j];
          }
          newArr[i] = max;
        }
    
      } 
      return newArr;
      
    }
    
    largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);
    

    相关文章

      网友评论

          本文标题:Return Largest Numbers in Arrays

          本文链接:https://www.haomeiwen.com/subject/mxjctxtx.html