Es una cola de prioridad basada en el montón de prioridad.
- Los elementos de esta clase están en orden natural o dependen del Constructor que usamos en este momento de la construcción.
- No permite punteros nulos.
- No permite insertar un objeto no comparable, si se basa en un ordenamiento natural.
Constructores:
- PriorityQueue(): crea una PriorityQueue con la capacidad inicial predeterminada (11) que ordena sus elementos según su orden natural.
- PriorityQueue(Colección c): crea una PriorityQueue que contiene los elementos de la colección especificada.
- PriorityQueue(int initialCapacity) : crea una PriorityQueue con la capacidad inicial especificada que ordena sus elementos según su orden natural.
- PriorityQueue(int initialCapacity, Comparator comparador): Crea un PriorityQueue con la capacidad inicial especificada que ordena sus elementos de acuerdo con el comparador especificado.
- PriorityQueue(PriorityQueue c) : Crea una PriorityQueue que contiene los elementos en la cola de prioridad especificada.
- PriorityQueue(SortedSet c) : crea un PriorityQueue que contiene los elementos del conjunto ordenado especificado.
Declaración :
public class PriorityQueue extends AbstractQueue implements Serializable
Métodos:
- add(element) : java.util.PriorityQueue.add() inserta los elementos en la cola de prioridad.
Sintaxis:public boolean add(E e) Parameters : element : the element we need to add. Return : call return true. Exception : -> ClassCastException -> NullPointerException
- comparator() : java.util.PriorityQueue.comparator() ordena los elementos en la cola.
Sintaxis:public Comparator comparator() Parameters : ------- Return : orders the queue or return null, if it is naturally ordered Exception : ----------
- contains(Object obj) : java.util.PriorityQueue.contains(obj) devuelve verdadero si la cola de prioridad contiene el elemento “obj”.
Sintaxis:public boolean contains(Object obj) Parameters : obj : object to be checked Return : true - if the object is present else, return false Exception :
- iterator() : java.util.PriorityQueue.iterator() itera sobre el elemento de la cola.
Sintaxis:public Iterator iterator() Parameters : ------- Return : calls iterator over the elements in the queue. Exception : --------
- oferta(elemento) : se requiere java.util.PriorityQueue.offer() para insertar un elemento específico en la cola de prioridad dada.
Sintaxis:public boolean offer(E element) Parameters : element : specific element to be entered. Return : call return true. Exception : -> ClassCastException -> NullPointerException
- peek() : java.util.PriorityQueue.peek() identifica el elemento principal de la cola.
Sintaxis:public E peek() Parameters : ------- Return : calls if head exists, else null Exception : ------
- poll() : java.util.PriorityQueue.poll() identifica el encabezado y luego lo elimina.
Sintaxis:public E poll() Parameters : --- Return : calls if head exists, else null Exception : ------
- remove(Object obj) : java.util.PriorityQueue.remove() elimina un objeto específico de la cola.
Sintaxis:public boolean remove(Object obj) Parameters : obj : object to be removed Return : true - if obj is removed Exception : ------
- size() : java.util.PriorityQueue.size() devuelve el tamaño de los elementos en la cola de prioridad.
Sintaxis:public int size() Parameters : ---- Return : no. of elements Exception : ---------
- toArray() : java.util.PriorityQueue.toArray() devuelve una array que contiene los elementos de PriorityQueue.
Sintaxis:public Object[] toArray() Parameters : ------ Return : returns an array containing all the elements of PriorityQueue. Exception : --------
- toArray(T[] array) : java.util.PriorityQueue.toArray(T[] a) devuelve la array que tiene los elementos de Priority Queue.
Sintaxis:public T[] toArray(T[] array) Parameters : array : the array to which are to be sorted. Return : call an array containing all the elements of the array. Exception : -> ArrayStoreException -> NullPointerException
- clear() : java.util.PriorityQueue.clear() borra todos los elementos de PriorityQueue.
Sintaxis:public void clear() Parameters : --- Return : ------ Exception : ------
// Java Program illustrating the methods // of java.utl.priorityQueue class // add(), comparator(), conatins(), iterator(), offer() // peek(), poll(), toArray(), size(), toArray(t[] g1), // remove(), clear() import java.util.*; public class NewClass { public static void main(String[] args) { // Creating a Priority Queue : PriorityQueue <Integer> geek = new PriorityQueue <Integer>(); for ( int i= 2 ; i<= 20 ; i=i+ 2 ) { // Use of add() : geek.add( new Integer (i)); } System.out.println( "geek PriorityQueue : " + geek); // Use of comparator() // No ordering is required here as it is naturally ordered. Comparator geek_comp = geek.comparator(); System.out.println( "geek PriorityQueue : " + geek_comp); // Use of contains() boolean check = geek.contains( 6 ); System.out.println( "Use of contains() : " + check); // Use of iterator() Iterator g_iterator = geek.iterator(); System.out.print( "Iterator values : " ); while (g_iterator.hasNext()) { System.out.print(g_iterator.next() + " " ); } System.out.println( "" ); // Use of offer() geek.offer( 3050 ); System.out.println( "geek PriorityQueue : " + geek); // Use of peek() System.out.println( "Head of PriorityQueue via peek : " + geek.peek()); //Use of poll() int h = geek.poll(); System.out.println( "\nHead of PriorityQueue via poll : " + h); System.out.println( "geek PriorityQueue bcz of poll() : " + geek); // Use of remove() boolean r = geek.remove( 8 ); System.out.println( "\nCan remove : " + r); System.out.println( "geek PriorityQueue bcz of remove() : " + geek); // use of size() System.out.println( "\nSize of PriorityQueue : " + geek.size()); // Use of toArray() Object[] g = geek.toArray(); System.out.print ( "Array from PriorityQueue : " ); for ( int i = 0 ; i<g.length; i++ ) { System.out.print (g[i].toString() + " " ) ; } System.out.println( "\n" ); // Use of toArray(t[] g1) : Integer[] g2 = new Integer[ 5 ]; Integer[] g1 = geek.toArray(g2); System.out.print ( "Array from PriorityQueue of size 5 : " ); for ( int i = 0 ; i<g1.length; i++ ) { System.out.print (g1[i].toString() + " " ) ; } System.out.println( "\n" ); // Use of clear() geek.clear(); System.out.println( "PriorityQueue after clear() : " + geek); } } |
Producción :
geek PriorityQueue : [2, 4, 6, 8, 10, 12, 14, 16, 18, 20] geek PriorityQueue : null Use of contains() : true Iterator values : 2 4 6 8 10 12 14 16 18 20 geek PriorityQueue : [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 3050] Head of PriorityQueue via peek : 2 Head of PriorityQueue via poll : 2 geek PriorityQueue bcz of poll() : [4, 8, 6, 16, 10, 12, 14, 3050, 18, 20] Can remove : true geek PriorityQueue bcz of remove() : [4, 10, 6, 16, 20, 12, 14, 3050, 18] Size of PriorityQueue : 9 Array from PriorityQueue : 4 10 6 16 20 12 14 3050 18 Array from PriorityQueue of size 5 : 4 10 6 16 20 12 14 3050 18 PriorityQueue after clear() : []
This article is contributed by Mohit Gupta_OMG 🙂. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA