Kako implementirati prioritetno vrsto v Javi?



Ta članek vam bo predstavil še eno zanimivo temo v programski domeni, ki je skupaj z demonstracijo Priority Queue In Java

Prednostna naloga Čakalna vrsta v Javi se uporablja, kadar naj bi se predmeti obdelovali glede na prioriteto. Ta članek vam bo pomagal podrobno raziskati ta koncept. V tem članku bodo zajeti naslednji napotki:

Začnimo torej,





Prednostna vrsta v Javi

Kot smo že omenili, se PriorityQueue uporablja, kadar naj bi se predmeti obdelovali na podlagi prioritete. Znano je, da čakalna vrsta sledi algoritmu »prvi v prvem izstopi«, včasih pa je treba elemente čakalne vrste obdelati glede na prioriteto, takrat nastopi PriorityQueue. PriorityQueue temelji na kopici prioritet. Elementi prednostne čakalne vrste so razvrščeni po naravnem vrstnem redu ali s primerjalnikom, ki je na voljo v času izdelave čakalne vrste, odvisno od tega, kateri konstruktor je uporabljen. Nekaj ​​pomembnih točk v prednostni vrsti je naslednjih:

  • PriorityQueue ne dovoljuje NULL kazalcev.
  • Ne moremo ustvariti PriorityQueue predmetov, ki niso primerljivi
  • PriorityQueue so nevezane čakalne vrste.
  • Glava te čakalne vrste je najmanjši element glede na določeno naročanje. Če je več elementov vezanih za najmanjšo vrednost, je glava eden od teh elementov - vezi se poljubno prekinejo.
  • Operacije iskanja čakalne vrste anketirajo, odstranjujejo, pokukajo in dostopajo do elementa na čelu čakalne vrste.
  • Podeduje metode iz razreda AbstractQueue, AbstractCollection, Collection in Object.

Nadaljujemo s tem člankom o Prioriteti v Javi



Izjava vmesnika čakalne vrste

javni vmesnik Čakalna vrsta razširja zbirko

Nadaljujemo s tem člankom o Prioriteti v Javi

Metode vmesnika Java Queue

Metoda Opis

logični dodatek (objekt)



Uporablja se za vstavljanje določenega elementa v to čakalno vrsto in ob uspehu vrne true.

logična ponudba (objekt)

Uporablja se za vstavljanje določenega elementa v to čakalno vrsto.

Odstranitev predmeta ()

Uporablja se za pridobivanje in odstranjevanje glave te čakalne vrste.

Anketa predmeta ()

Uporablja se za pridobivanje in odstranjevanje glave te čakalne vrste ali vrne null, če je ta vrsta prazna.

Element predmeta ()

Uporablja se za pridobivanje glave te čakalne vrste, vendar je ne odstrani.

Pogled predmeta ()

Uporablja se za pridobivanje, vendar ne odstranjuje glave te čakalne vrste ali vrne nič, če je ta vrsta prazna.

Nadaljujemo s tem člankom o Prioriteti v Javi

Primer

paket com.journaldev.collections

kaj naredi split v javi
import java.util.Comparator import java.util.PriorityQueue import java.util.Queue import java.util.Rendom javni razred PriorityQueueExample {public static void main (String [] args) {// naravni primer urejanja čakalne vrste prioritet integerPriorityQueue = nova PriorityQueue (7) Naključni rand = nov Random () za (int i = 0i<7i++){ integerPriorityQueue.add(new Integer(rand.nextInt(100))) } for(int i=0i<7i++){ Integer in = integerPriorityQueue.poll() System.out.println('Processing Integer:'+in) } //PriorityQueue example with Comparator Queue customerPriorityQueue = new PriorityQueue(7, idComparator) addDataToQueue(customerPriorityQueue) pollDataFromQueue(customerPriorityQueue) } //Comparator anonymous class implementation public static Comparator idComparator = new Comparator(){ @Override public int compare(Customer c1, Customer c2) { return (int) (c1.getId() - c2.getId()) } } //utility method to add random data to Queue private static void addDataToQueue(Queue customerPriorityQueue) { Random rand = new Random() for(int i=0 i<7 i++){ int id = rand.nextInt(100) customerPriorityQueue.add(new Customer(id, 'Pankaj '+id)) } } //utility method to poll data from queue private static void pollDataFromQueue(Queue customerPriorityQueue) { while(true){ Customer cust = customerPriorityQueue.poll() if(cust == null) break System.out.println('Processing Customer with ID='+cust.getId()) } } } 

Izhod:

Izhod - Prednostna vrsta v Javi - Edureka

Tako smo prišli do konca tega članka o 'Prednostni vrsti v Javi'. Če želite izvedeti več, si oglejte Edureka, zaupanja vredno podjetje za spletno učenje. Edurekin tečaj za usposabljanje in certificiranje Java J2EE in SOA je zasnovan tako, da vas usposobi za temeljne in napredne koncepte Java, skupaj z različnimi Java okviri, kot sta Hibernate & Spring.

Imate vprašanje za nas? Prosimo, omenite to v oddelku za komentarje tega spletnega dnevnika, mi pa se vam bomo javili v najkrajšem možnem času.