En una cola de prioridad a cada valor se le asigna una prioridad. Así puedes buscar los valores con mayor o menor prioridad y controlar ciertas cosas según su prioridad.
ds_
priority _create()Crea
una nueva cola. La función devuelve un número entero con la id de la cola para
usarla en las diferentes funciones. Puedes crear varias colas.
ds_ priority _destroy(id)
Destruye la cola, liberando la memoria usada. No olvides usar esta función
cuando ya no necesites la cola.
ds_ priority _clear(id)Limpia
la cola, borrando todos los valores que contiene pero no la destruye.
ds_ priority _size(id)
Devuelve el número de valores en la cola.
ds_ priority _empty(id)
Devuelve true si la cola está vacía. Es lo mismo que chequear si el
número de valores en la cola es cero.
ds_priority_add(id,val,prio)
Añade el valor con la prioridad especificada a la cola.
ds_priority_change_priority(id,val,prio)
Cambia la prioridad del valor especificado al nuevo valor.
ds_priority_find_priority(id,val)
Devuelve la prioridad del valor especificado.
ds_priority_delete_value(id,val)
Elimina el valor (con su prioridad) de la cola de prioridad.
ds_priority_delete_min(id)Devuelve
el valor con la menor prioridad y lo elimina de la cola.
ds_priority_find_min(id)
Devuelve el valor con la menor prioridad pero no lo elimina de la cola.
ds_priority_delete_max(id)
Devuelve el valor con la mayor prioridad y lo elimina de la cola.
ds_priority_find_max(id)
Devuelve el valor con la mayor prioridad pero no lo elimina de la cola.