Código de JavaScript - Calcular la mediana de una lista de numeros

Imágen de perfil
Val: 2.204
Plata
Ha aumentado su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Calcular la mediana de una lista de numerosgráfica de visualizaciones


JavaScript

Publicado el 26 de Marzo del 2021 por Katas (192 códigos)
479 visualizaciones desde el 26 de Marzo del 2021
La mediana es el "número en el medio" de una lista ordenada de números si es par, en el caso de que sea impar, tenemos que encontrar el par central de números, y después calcular su valor medio.

1
2
3
4
5
mediana([1, 2, 3, 4, 5]); // 3
mediana([1, 2, 3, 4]); // 2.5
mediana([1, 2, 3]); // 2
mediana([1, 2]); // 1.5
mediana([1]); // 1


En el caso de que sea par, con la función slice() obtenemos un array con los dos valores del centro, el cual pasamos a la función reduce para que los sume y el resultado lo dividimos entre 2 para obtener la media.
1
arr.slice(l/2-1, l/2+1).reduce((a,b) => a+b)/2

En el caso de que sea impar, simplemente obtenemos el valor del medio con slice()
1
arr.slice((l/2), l/2+1)[0]

1

Publicado el 26 de Marzo del 2021gráfica de visualizaciones de la versión: 1
480 visualizaciones desde el 26 de Marzo del 2021
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/**
 * Funcion para calcular la mediana de una lista de numeros
 *
 * @param {array} arr - array numerico
 *
 * @return {integer}
 */
function mediana(arr) {
    arr.sort((a,b) => a-b);
    const l=arr.length;
    return l%2==0
        ? arr.slice(l/2-1, l/2+1).reduce((a,b) => a+b)/2
        : arr.slice((l/2), l/2+1)[0];
}



Comentarios sobre la versión: 1 (0)


No hay comentarios
 

Comentar la versión: 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s6971