WikiGalaxy

Personalize

Priority Queue Operations

Introduction to Priority Queues

A priority queue is a special type of queue in which each element is associated with a priority, and elements are served based on their priority. Higher priority elements are dequeued before lower priority ones.

Use Cases of Priority Queues

Priority queues are widely used in applications like CPU scheduling, Dijkstra's shortest path algorithm, and bandwidth management.

Example 1: Basic Priority Queue


import java.util.PriorityQueue;

public class BasicPriorityQueue {
    public static void main(String[] args) {
        PriorityQueue pq = new PriorityQueue<>();
        pq.add(4);
        pq.add(2);
        pq.add(5);
        System.out.println("Priority Queue: " + pq);
    }
}
    

Example 2: Custom Comparator


import java.util.PriorityQueue;
import java.util.Comparator;

public class CustomComparator {
    public static void main(String[] args) {
        PriorityQueue pq = new PriorityQueue<>(Comparator.reverseOrder());
        pq.add(4);
        pq.add(2);
        pq.add(5);
        System.out.println("Priority Queue (Descending): " + pq);
    }
}
    

Example 3: String Priority Queue


import java.util.PriorityQueue;

public class StringPriorityQueue {
    public static void main(String[] args) {
        PriorityQueue pq = new PriorityQueue<>();
        pq.add("Apple");
        pq.add("Banana");
        pq.add("Cherry");
        System.out.println("String Priority Queue: " + pq);
    }
}
    

Example 4: Removing Elements


import java.util.PriorityQueue;

public class RemoveElements {
    public static void main(String[] args) {
        PriorityQueue pq = new PriorityQueue<>();
        pq.add(4);
        pq.add(2);
        pq.add(5);
        System.out.println("Removed Element: " + pq.poll());
        System.out.println("Priority Queue after removal: " + pq);
    }
}
    

Example 5: Peek Operation


import java.util.PriorityQueue;

public class PeekOperation {
    public static void main(String[] args) {
        PriorityQueue pq = new PriorityQueue<>();
        pq.add(4);
        pq.add(2);
        pq.add(5);
        System.out.println("Peek Element: " + pq.peek());
    }
}
    

Example 6: Priority Queue with Objects


import java.util.PriorityQueue;
import java.util.Comparator;

class Student {
    String name;
    int grade;

    public Student(String name, int grade) {
        this.name = name;
        this.grade = grade;
    }

    @Override
    public String toString() {
        return name + ": " + grade;
    }
}

public class ObjectPriorityQueue {
    public static void main(String[] args) {
        PriorityQueue pq = new PriorityQueue<>(Comparator.comparingInt(s -> s.grade));
        pq.add(new Student("Alice", 85));
        pq.add(new Student("Bob", 90));
        pq.add(new Student("Charlie", 80));
        System.out.println("Student Priority Queue: " + pq);
    }
}
    

Example 7: Checking if Empty


import java.util.PriorityQueue;

public class CheckIfEmpty {
    public static void main(String[] args) {
        PriorityQueue pq = new PriorityQueue<>();
        System.out.println("Is the Priority Queue empty? " + pq.isEmpty());
        pq.add(4);
        System.out.println("Is the Priority Queue empty after adding an element? " + pq.isEmpty());
    }
}
    

Example 8: Iterating Through Priority Queue


import java.util.PriorityQueue;

public class IteratePriorityQueue {
    public static void main(String[] args) {
        PriorityQueue pq = new PriorityQueue<>();
        pq.add(4);
        pq.add(2);
        pq.add(5);
        System.out.println("Iterating through Priority Queue:");
        for (Integer num : pq) {
            System.out.println(num);
        }
    }
}
    

Example 9: Clearing the Priority Queue


import java.util.PriorityQueue;

public class ClearPriorityQueue {
    public static void main(String[] args) {
        PriorityQueue pq = new PriorityQueue<>();
        pq.add(4);
        pq.add(2);
        pq.add(5);
        pq.clear();
        System.out.println("Priority Queue after clearing: " + pq);
    }
}
    

Example 10: Size of Priority Queue


import java.util.PriorityQueue;

public class SizeOfPriorityQueue {
    public static void main(String[] args) {
        PriorityQueue pq = new PriorityQueue<>();
        pq.add(4);
        pq.add(2);
        pq.add(5);
        System.out.println("Size of Priority Queue: " + pq.size());
    }
}
    
logo of wikigalaxy

Newsletter

Subscribe to our newsletter for weekly updates and promotions.

Privacy Policy

 • 

Terms of Service

Copyright © WikiGalaxy 2025