2016-08-24 3 views
-1

Return größte Zahlen in Arraysgrößte nicht in Array (js Programm)

//my code 
function largestOfFour(arr) { 

    var largest=[];  

    for(var i = 0; i < arr.length; i++){ 
     for (var j = 0; j < arr[i].length; j++) { 
      if(arr[i][j] > largest){ 
       largest[i]= arr[i][j]; 

      } 


     } 

    } 
    return largest; 
} 

largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]); 

// exp o/p

[27,5,39,1001] 

// im bekommen

[5,13] 
+0

Erwartete ausgegeben werden soll '[5, 27, 39, 1001]'. – Tushar

+0

['arr.map (e => Math.max (... e))'] (http://stackoverflow.com/a/32679435/2025923) – Tushar

+0

ich bekomme [5, 13] nur auf dem freecodecamp editor –

Antwort

0
if(arr[i][j]>largest) 

sollte

sein
if(arr[i][j]>largest[i]) 

Ihren Array initialisieren auch mit einigem MIN Wert wie 0

function largestOfFour(arr) { 

var largest=[];  

for(var i = 0; i < arr.length; i++){ 
    largest[i] = 0; 
    for (var j = 0; j < arr[i].length; j++) { 
     if(arr[i][j] > largest[i]){ 
      largest[i]= arr[i][j]; 

     } 


    } 

} 
    return largest; 
} 
+0

ich bekomme Aans als [5,0,0,0] –

+0

Ich habe vergessen, im Vergleich größten [i] bearbeiten, versuchen aktualisiert –

0

ich es auf diese Weise tun würde.

var largest=[];  
 

 
a = [[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]] 
 

 
for(var i = 0; i < a.length; i++){ 
 
largest.push(a[i].sort(function(a, b){return b-a})[0]) 
 
} 
 
console.log(largest);