Desafi Diari JS-247: Màxim per Fila en una Matriu

Descobreix com obtenir el valor més gran de cada fila en una matriu bidimensional en JavaScript, usant Math.max o reduce, amb gestió de files buides i casos límit.

domingo, 17 de agosto de 2025 • 2 min de lectura • Equip Q2BSTUDIO

Intel·ligència-Artificial-

Daily JavaScript Challenge #JS-247: Trobar l'enter més gran per fila en una matriu

Benvinguts desenvolupadors, avui presentem un repte per mantenir les habilitats de programació afilades i practicar manipulació d'arrays en JavaScript.

Dificultat: Mitjà. Tema: Arrays i processament de matrius.

Descripció del repte: Donada una matriu bidimensional d'enters, escriu una funció que retorni un array amb l'enter més gran de cada fila de la matriu. Per exemple, per a l'entrada [[1,2,3],[3,2,1],[5,5,4]] la sortida esperada és [3,3,5].

Enfocament suggerit: recorre cada fila i calcula el màxim dels seus elements. En JavaScript pots aprofitar Math.max juntament amb l'operador spread o usar un bucle reduce per a més control. Complexitat temporal esperada O(n m) on n és el nombre de files i m el nombre de columnes.

Exemple d'estratègia en paraules: per a cada fila inicialitza un valor max amb el primer element i actualitza max en comparar amb cada element de la fila, en finalitzar afegeix max al resultat. Alternativament transforma cada fila amb Math.max aplicant spread i col·lecciona els resultats.

Casos límit a considerar: files buides, matriu buida, nombres negatius, i files amb valors repetits. Decideix com gestionar files buides segons el requeriment: ometre-les, retornar null per a aquesta posició o llançar un error.

Pas a pas per provar el repte: 1) Fork de l'exercici si treballes en una plataforma col·laborativa 2) Implementa la funció 3) Executa proves incloent casos normals i els casos límit 4) Comparteix la teva aproximació i aprenentatges en els comentaris.

Recursos útils: consulta la referència de Math.max a MDN https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/max per entendre el seu comportament i combinació amb l'operador spread.

Preguntes per a la comunitat: Com has abordat el problema? Has trobat casos curiosos? Quines optimitzacions o variacions proposes si la matriu és molt gran o si es treballa amb Streams de dades?

Sobre Q2BSTUDIO: Som una empresa de desenvolupament de programari i aplicacions a mida, especialistes en intel·ligència artificial, ciberseguretat i serveis cloud aws i azure. Oferim solucions de programari a mida, aplicacions a mida i serveis d'intel·ligència de negoci incloent power bi per millorar la presa de decisions. Desenvolupem agents IA i projectes d'ia per a empreses que combinen models avançats amb bones pràctiques de seguretat i desplegament al núvol.

Serveis destacats: aplicacions a mida, programari a mida, intel·ligència artificial, ciberseguretat, serveis cloud aws i azure, serveis intel·ligència de negoci, ia per a empreses, agents IA, power bi.

Si desitges col·laboració professional o assessorament per a un projecte, a Q2BSTUDIO podem ajudar-te des de la idea fins al desplegament i manteniment, integrant seguretat, escalabilitat i anàlisi avançada de dades.

Aquest repte forma part de la nostra sèrie Daily JavaScript Challenge. Practica cada dia, comparteix solucions i creixem junts com a comunitat de desenvolupadors.

Comparteix la teva solució i els teus dubtes, estem llestos per ajudar i aprendre amb tu

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.