Foros del Web » Programación para mayores de 30 ;) » Java »

PriorityQueue como se tratan prioridades iguales

Estas en el tema de PriorityQueue como se tratan prioridades iguales en el foro de Java en Foros del Web. Hola la clase PriorityQueue de java.util como trata los elementos de igual prioridad? Por que segun los resultados que obtengo no es FIFO ni Lifo. ...
  #1 (permalink)  
Antiguo 15/08/2007, 19:36
 
Fecha de Ingreso: agosto-2003
Mensajes: 272
Antigüedad: 20 años, 8 meses
Puntos: 0
PriorityQueue como se tratan prioridades iguales

Hola la clase PriorityQueue de java.util como trata los elementos de igual prioridad?

Por que segun los resultados que obtengo no es FIFO ni Lifo.

saludos y gracias.
  #2 (permalink)  
Antiguo 16/08/2007, 02:28
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Re: PriorityQueue como se tratan prioridades iguales

Segun el API:
Cita:
This queue orders elements according to an order specified at construction time, which is specified either according to their natural order (see Comparable), or according to a Comparator, depending on which constructor is used...
Así que depende del "orden natural" o del comparador que le especifiques en el constructor.

S!
  #3 (permalink)  
Antiguo 16/08/2007, 11:17
 
Fecha de Ingreso: agosto-2003
Mensajes: 272
Antigüedad: 20 años, 8 meses
Puntos: 0
Re: PriorityQueue como se tratan prioridades iguales

Comprendo pero esto se supone que es una cola primero en entrar primero en salir. Y como es con prioridades es claro que pude darse el caso que un elemento sea ingresado con la misma prioridad.

al final sigo sin saber si la salida es aleatoria o no.....


Saludos.
  #4 (permalink)  
Antiguo 16/08/2007, 13:05
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Re: PriorityQueue como se tratan prioridades iguales

Dado que es una cola con prioridad, no se aplica lo de primero en entrar, primero en salir. Eso seria una cola FIFO y no es el caso.

Y la salida es aleatoria o no dependiendo del orden natural de los elementos introducidos o del comparador que le especifiques. Por poner un ejemplo, si el Comparable de String ordena aleatoriamente una de los dos cuando son iguales, una PriorityQueue de Strings devolvera aleatoriamente los que tengan la misma prioridad.

O sea... no hay respuesta fija: depende de la ordenacion que se use en cada caso.

S!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:30.