java

Moda de arreglo en Java (elemento más repetido)

En este post te mostraré cómo obtener la moda de arreglo en Java. Es decir, a partir de un arreglo, obtener cuál es el elemento más repetido. A esto se le llama obtener la moda o el dato que más se repite.

Diseñando el algoritmo para obtener la moda de arreglo en Java

Este algoritmo es sencillo. Comenzamos recorriendo el arreglo y agregando dos cosas a un diccionario o mapa:

  • El número
  • Un 1

Es decir, por cada que encontremos un número, lo asignamos al diccionario. Si ya existe, entonces aumentamos su conteo.

Después de eso, simplemente obtenemos el número que más se repitió. Así que en resumen contamos cuántas veces aparece un número y luego obtenemos el más repetido.

Contando números

Para contar la frecuencia con la que se repiten los números voy a usar un HashMap de Java de tipo Integer, Integer; pues tanto la clave como el valor serán de tipo entero.

La clave será el número y el valor será el conteo, es decir, las veces que se repite. El código hasta el momento es el siguiente:

See the gist on github.

Con eso contamos la frecuencia de números, así como cuando contamos la frecuencia de palabras con Java.

Obteniendo moda

Ahora que tenemos el mapa simplemente lo recorremos y usamos el algoritmo para obtener el número mayor. Después de todo eso, imprimimos los resultados.

See the gist on github.

Moda de arreglo en Java

Vamos a poner todo el código junto. Quedando así al final para obtener la moda de arreglo en Java. Recuerda que aunque en este caso es un array de tipo integer podríamos usar otros tipos de datos.

See the gist on github.

Si quieres puedes ejecutar el ejercicio en línea. Aquí tienes la prueba de que funciona:

Moda de arreglo en Java – Ejecución del programa

Conclusión

Esta es la manera en la que se me ocurrió resolver este algoritmo, básicamente usando mapas o diccionarios en donde se puede guardar una clave y un valor, además de que se puede acceder en tiempo constante.

Si te gusta Java te invito a ver más artículos en mi blog.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Compartir
Publicado por
parzibyte

Entradas recientes

Imprimir PDF con Bot de Telegram

La impresión de un PDF en cualquier impresora se puede automatizar con un bot de…

2 días hace

Enviar mensaje con bot de Telegram usando JavaScript (lado del cliente)

Hoy te enseñaré cómo enviar un mensaje a un usuario desde un bot de Telegram…

2 días hace

PHP: incrustar imagen en base64

El día de hoy te enseñaré algo muy sencillo pero útil al programar con PHP:…

2 días hace

Plugin ESC POS – Actualización 3.4.0: imprimir HTML

El plugin para imprimir en impresoras térmicas alcanza hoy su versión 3.4.0 agregando soporte para…

4 días hace

JavaScript (lado del cliente): leer pixeles de imagen

En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…

1 semana hace

PHP y JavaScript: llenar select con AJAX

Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…

2 semanas hace

Esta web usa cookies.