Java » Máximo y mínimo número de un conjunto
El objetivo de este ejemplo es solventar la necesidad de encontrar dentro de un conjunto el número mínimo y máximo del mismo.
Podríamos implementar un algoritmo donde recorriendo todos los elementos del conjunto fuésemos preguntando si el elemento es el más pequeño o es el más grande.
Si bien, vamos a apoyarnos en el framework Collection para llevar a cabo esta casuistica.
Dentro del framework Collection encontramos dos operaciones:
- .min(conjunto), devuelve el mínimo elemento del conjunto.
- .max(conjunto), devuelve el máximo elemento del conjunto.
Lo primero será el crear el conjunto e incluirle elementos:
Seths = new HashSet (); hs.add(2); hs.add(4); hs.add(6); hs.add(8);
El conjunto es representado por la clase Set, si bien la implementación es un HashSet. El método para añadir los elementos será .add(elemento).
Ahora solo nos quedará invocar a los métodos .max y .min:
System.out.println("El número mayor del conjunto es... "
+ Collections.max(hs));
System.out.println("El número menor del conjunto es... "
+ Collections.min(hs));Invocando dichas operaciones nos olvidamos de cualquier implementación del algoritmo que calcule el mínimo y el máximo. Pero, nos surge una duda ¿Cómo saben estos métodos realizar la comparación entre los números? ¿Y si fuese otro tipo de datos?.
A la hora de utilizar dichas operaciones, el framework espera que los elementos de los cuales queremos saber su mínimo y máximo se les pueda aplicar la función compareTo. Clases como Integer, Float,... ya implementan dicha función.
No quiere decir que a elementos que no contengan esta función no se les pueda aplicar operaciones del framework Collections, ya que existe la posibilidad de implementar el interface Comparator para buscar una solución.
Visualizar el ejemplo | Descargar el código






septiembre 27, 2007 #
no entendi nada
septiembre 28, 2007 #
estamos a mano tampoco entendi NADA
diciembre 20, 2007 #
Buena, justo lo que bucaba, pero falta poner la libreria o si esta remarcarla.
diciembre 21, 2007 #
Hola,
Efectivamente en el ejemplo no se hace referencia a la librería. La librería a importar es java.util.
El motivo por el cual no está es no hacer muy pesado el artículo. Si bien, el pecar de exceso puede hacer que no se entienda el ejemplo.
De todas maneras se puede ver en el código disponible para descargar.
abril 22, 2008 #
no entendi nada mas ejemplos no cren y menos blablabla
mayo 9, 2008 #
no en ten diiiiiiiiiiiiiiiiiii!!
julio 1, 2008 #
POR QUE NO SE EXPLICAN MEJOR
julio 5, 2008 #
ok ese metodo no lo conocia e incluso revisando en el api de java…. o talves no o encontre je je je je…
Pero gracias por la informacion
septiembre 2, 2008 #
hola quiesiera el codigo fuente en java sobre el determinar el el promedio de solo los numeros negativos ok si ayudenme con eso please
septiembre 11, 2008 #
Hola Mary como estas?? mira no estoy segura si existe una funcion en la clase Math para calcular el promedio pero una forma podria ser crear una funcion asi
//vector = {0, -65, 54.23, 3.14, 89, 75, 7,-25,78,-2.25};
//esta funcion, por ejemplo retorna 30.75
public double calcularPromedio(double[] vector)
{ int cont=0;
double result = 0;
for (int i = 0; i < vector.length; i++) {
if(vector[i]< 0)
{ result+= vector[i];
cont++;
}
}
if(result != 0)
return -result/cont;
else
return cont;
}
Espero te sirva … ya que es la primera vez que participo en un foro .. y no suelo ser muy clara para expresarme…suerte