Java - Cola de prioridad

 
Vista:

Cola de prioridad

Publicado por milo (7 intervenciones) el 24/04/2014 04:54:03
Hola.
me podrian explicar, como funcionan las colas de prioridad en Java, de acuerdo, a un orden de ordenamiento, ya he buscado y leido, pero no entiendo bien como funciona el objeto comparator en las colas..

gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Cola de prioridad

Publicado por Mario (26 intervenciones) el 24/04/2014 21:37:29
Estás utilizando alguna clase en especial? no he escuchado lo de colas de prioridad en la api propia de java...


sobre el comparator es muy fácil y es el mismo principio en todos los elementos de la api de collections:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
List<Persona> listaPersonas; //Supongamos que la lista está llena de objetos personas
 
//Creamos un comparator para ordenar las personas por nombre alfabeticamente
//Se crea un comparador para comparar objetos de tipo persona (para eso es el <Persona>)
Comparator<Persona> c = new Comparator<Persona>() {
 
    //sobreescribimos el metodo compare que recibe 2 objetos
    //del mismo tipo del comparador (Persona)
    public int compare(Persona p1, Persona p2) {
 
        //comparamos y retornamos un int que indica si es mayor menor o igual
	//0 indica que es igual
	//1 indica que es mayor
	//-1 indica que es menor
	//utilizamos el metodo compareToIgnoreCase que ignora mayusculas
        return p1.getNombre().compareToIgnoreCase(p2.getNombre());
    }
};
 
//Ordenamos la lista utilizando el comparador que creamos
Collections.sort(listaPersonas,c);

luego del llamado al método sort ya la lista estará ordenada alfabéticamente por nombre
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar