Dado un array de valores, devolver el indice del elemento mas grande
JavaScript
Publicado el 29 de Abril del 2021 por Katas (200 códigos)
1.209 visualizaciones desde el 29 de Abril del 2021
Esta función recibe un array de valores y tiene que devoler el indice del elemento mas grande
Para este ejemplo, he utilizado la función reduce()
(acum, el, i) -> En cada iteración del bucle, se obtiene el valor acumulado (por defecto es [0, 0]), el valor y el indice del elemento.
[0, 0] -> En el array acum tenemos dos valores, el primero es el valor mas grande encontrado, y en el segudo el indice de dicho valor.
acum[0] > el ? acum : [el, i] -> Si el ultimo valor guardado es superior al valor actual del array, entonces, devolvemos simplemente la variable acum, pero si no es así, devolvemos un array con el valor y el indice de ese elemento.
Para este ejemplo, he utilizado la función reduce()
1
arr.reduce((acum, el, i) => acum[0] > el ? acum : [el, i], [0, 0])[1];
[0, 0] -> En el array acum tenemos dos valores, el primero es el valor mas grande encontrado, y en el segudo el indice de dicho valor.
acum[0] > el ? acum : [el, i] -> Si el ultimo valor guardado es superior al valor actual del array, entonces, devolvemos simplemente la variable acum, pero si no es así, devolvemos un array con el valor y el indice de ese elemento.
1
2
3
indiceDelMasGrande([85, 100, 90]); // 1
indiceDelMasGrande([8, 8, 8]); // 2
indiceDelMasGrande([850, 100, 90]); // 0
Comentarios sobre la versión: 1 (0)
No hay comentarios