Prioriteettijonot

Prioriteettijonoon tallennetaan arvoja ja niille kaikille annetaan prioriteetti eli tärkeys. Voit helposti löytää arvoja, joilla on pienin tai suurin prioriteetti. Tällä tietorakenteella voit siis hallita asioita tärkeysjärjestyksessä. Seuraavat funktiot käsittelevät prioriteettijonoja:

ds_priority_create() Luo uuden prioriteettijonon. Funktio palauttaa kokonaisluvun, joka on prioriteettijonon id ja jota on käytettävä kaikissa muissa funktioissa juuri tämän tietyn prioriteettijonon käsittelemiseksi.
ds_priority_destroy(id) Tuhoaa prioriteettijonon, jolla on annettu id, ja vapauttaa sen varaaman muistin. Älä unohda kutsua tätä, kun et enää tarvitse prioriteettijonoa.
ds_priority_clear(id) Tyhjentää prioriteettijonon, jolla on annettu id, jolloin kaikki siinä oleva tieto poistetaan, mutta itse prioriteettijonoa ei tuhota.
ds_priority_copy(id,source) Kopioi prioriteettijonon source prioriteettijonoon, jolla on annettu id.
ds_priority_size(id) Ilmoittaa prioriteettijonoon, jolla on annettu id, säilöttyjen arvojen määrän.
ds_priority_empty(id) Ilmoittaa, onko prioriteettijono, jolla on annettu id, tyhjä. Tämä on sama asia, kuin jos testaisi, onko prioriteettijonon koko 0.
ds_priority_add(id,val,prio) Lisää prioriteettijonoon, jolla on annettu id, arvon ilmoitetulla prioriteetilla.
ds_priority_change_priority(id,val,prio) Muutttaa prioriteettijonossa, jolla on annettu id, olevan arvon val prioriteettia.
ds_priority_find_priority(id,val) Palauttaa prioriteettijonossa, jolla on annettu id, olevan arvon val prioriteetin.
ds_priority_delete_value(id,val) Poistaa annetun arvon (prioriteetteineen) prioriteettijonosta, jolla on annettu id.
ds_priority_delete_min(id) Palauttaa prioriteettijonosta, jolla on annettu id, arvon, jolla on pienin prioriteetti ja poistaa sen prioriteettijonosta.
ds_priority_find_min(id) Palauttaa prioriteettijonosta, jolla on annettu id, arvon, jolla on pienin prioriteetti, mutta ei poista sitä prioriteettijonosta.
ds_priority_delete_max(id) Palauttaa prioriteettijonosta, jolla on annettu id, arvon, jolla on suurin prioriteetti ja poistaa sen prioriteettijonosta.
ds_priority_find_max(id) Palauttaa prioriteettijonosta, jolla on annettu id, arvon, jolla on suurin prioriteetti, mutta ei poista sitä prioriteettijonosta.
ds_priority_write(id) Muuntaa prioriteettijonotietorakenteen, jolla on annettu id, merkkijonoksi ja palauttaa sen. Tätä merkkijonoa voidaan sitten käyttää esim. sen tallentamiseen tiedostoon. Tällä tavoin tietorakenteiden tallentaminen helpottuu.
ds_priority_read(id,str) Lukee tietorakenteen annetusta merkkijonosta (joka on luotu edellisellä funktiolla).