Skip to main content

Deque & Priority Queue

Advanced queue data structures for specialized applications and optimizations.

Double-ended queue operations

  • Deque Operations: Add/remove from both ends
  • Front Operations: Add/remove from front
  • Back Operations: Add/remove from back
  • Efficient Implementation: Using circular buffer or linked list

Heap implementation

  • Min-Heap: Parent is smaller than children
  • Max-Heap: Parent is larger than children
  • Heap Operations: Insert, extract, heapify
  • Array Representation: Using array to represent heap

Top K problems

  • Top K Elements: Find k largest/smallest elements
  • Top K Frequent: Find k most frequent elements
  • Top K Closest: Find k closest points
  • Heap-based Solution: Using heap for efficient solution

Median finding

  • Running Median: Find median in stream of numbers
  • Two Heaps: Using min-heap and max-heap
  • Balanced Heaps: Maintaining equal size heaps
  • Dynamic Median: Updating median as new elements arrive

Task prioritization

  • Priority Queue: Tasks with different priorities
  • Heap-based Priority: Using heap for priority queue
  • Dynamic Priorities: Changing task priorities
  • Scheduling Algorithms: Priority-based scheduling